Thanks a lot for the VI. It is very useful. My one doubt is Pinginfoview.exe is free to use or do we need to purchase license?
a part of our program is ping monitoring, so we need continuously check IPs, this is important for me.
the code give us percent of alive IPs package, and if call whit external loop then we have 100% or 0% alive (for each ping) but i need real percent of alive.
one question: how it work? is it use .net functions? this is very fast. do you see source code of PingInfoView?
Many sysinternal utilities have been written when .Net was not even a wet dream in some peoples mind. They gerneally are written in C or C++ and are using low level Windows APIs, sometimes also APIs that MS originally "forgot" to document. Mark Russinovich has since several years joined Microsoft as CTO for the Windows Azure platform. As such the sysinternal tools are still available through Microsoft hosted webpages but he isn't as active on that anymore, as he has other tasks that I'm sure are just as dauting. Source code for the sysinternal tools is generally not avaiable, although I suppose some of it may nowadays partly find its way into the Windows Platform SDK.
The reason it is fast is most likely because it creates as many threads as you tell it to ping addresses. That's a tricky thing to do as you need to watch many things at the same time, but possible in C. LabVIEW does implement multithreading transparently for you but as you have found out with limited number of threads in a pool. Once they are exhausted it doesn't go of and create more threads dynamically as that would make everything really very complicated and hard and for most applications cause rather a performance decrease than a gain.
According to PingInfoView's website, it appears to be freeware and available for anyone to use.
Yes it is freeware but that alone doesn't mean it is unrestricted. When building an application that uses it or embeds it, other restrictions to the software may apply. In this case redistribution is unrestricted as long as you include all the files from the download, according to that link.