I copied this code off the internet.
It compiles fine but when I run it, I get the error below.
I am running a Windows 2000 machine and using Microsofts Visual C# 2005 Beta.
Thanks for any help you can give me!!
Error message:
System.Net.NetworkInformation.PingException: An exception occurred during a Ping request. ---> System.EntryPointNotFoundException: Unable to find an entry point named 'IcmpCreateFile' in DLL 'iphlpapi.dll'.
at System.Net.NetworkInformation.UnsafeNetInfoNativeMethods.IcmpCreateFile()
at System.Net.NetworkInformation.Ping.InternalSend(IPAddress address, Byte[] buffer, Int32 timeout, PingOptions options, Boolean async)
at System.Net.NetworkInformation.Ping.ContinueAsyncSend(Object state)
--- End of inner exception stack trace ---
I looked for the 'iphlpapi.dll' and it is in the WINNT\system32 directory.
Here is the code:
namespace PingTest
{
partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public void StartPingButton_Click(object sender, EventArgs e)
{
Ping pingSender = new Ping();
pingSender.PingCompleted += new PingCompletedEventHandler(PingCompletedCallback);
string data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
byte[] buffer = Encoding.ASCII.GetBytes(data);
int timeout = 12000;
PingOptions options = new PingOptions(64, true);
richTextBox1.Text = "Time to Live: " + options.Ttl + "ms"
+ "\r\n" + "Dont Fragment: " + options.DontFragment;
pingSender.SendAsync(textBox1.Text, buffer, timeout, options);
}//end StartPingButton
public void PingCompletedCallback(object sender, PingCompletedEventArgs e)
{
if (e.Cancelled)
{
richTextBox1.Text = "Ping Cancelled.";
}
if (e.Error != null)
{
richTextBox1.Text = "Ping Failed. " + "\r\n" + e.Error.ToString();
}
PingReply reply = e.Reply;
if (reply.Status == IPStatus.Success)
{
richTextBox1.Text = "Address: " + reply.Address.ToString();
}
}// end pingcompletedcallback
private void ResetButton_Click(object sender, EventArgs e)
{
Application.Exit();
}
}//end Class Form
}//end namespace