SendPingAsync 回复 return 11050

SendPingAsync Reply return 11050

我正在尝试使用 SendPingAsync 制作一个简单的 ping 应用程序。但是,当连接断开时,pingReply.Status.ToString() return 奇怪的数字“11050”。它会 return 不成功的消息,如 "TimedOut" 或 "DestinationHostUnreachable",但在几秒钟后。这是什么意思?

这是我的代码:

async Task ngeping(String host, CancellationToken ct)
{
    Ping ping = new Ping();
    IPAddress ipaddress;
    PingReply pingReply = null;
    long tripTime;
    while (true)
    {
        if (ct.IsCancellationRequested) break;
        tripTime = -1;
        try
        {
            pingReply = await ping.SendPingAsync(host, 3000);
            ipaddress = pingReply.Address;
            if (pingReply.Status == IPStatus.Success)
            {
                tripTime = pingReply.RoundtripTime;
                if(tripTime<300)
                    gaweRTF.insertLine(GaweRTF.HIGHLIGHT_GREEN, ipaddress.ToString() + " - " + tripTime + " ms");
                else if (tripTime < 500)
                    gaweRTF.insertLine(GaweRTF.HIGHLIGHT_YELLOW, ipaddress.ToString() + " - " + tripTime + " ms");
                else
                    gaweRTF.insertLine(GaweRTF.HIGHLIGHT_RED, ipaddress.ToString() + " - " + tripTime + " ms");
            }
            else
                gaweRTF.insertLine(GaweRTF.HIGHLIGHT_RED, "not success: "+pingReply.Status.ToString());
        }
        catch
        {
            gaweRTF.insertLine(GaweRTF.HIGHLIGHT_RED, ERROR_MESSAGE);
        }
        rtb.Rtf = gaweRTF.finishRTF();
        if (tripTime>=0 && tripTime<1000) await Task.Delay(1000 - (int) tripTime);
        if (pingReply.Status != IPStatus.Success) await Task.Delay(1000);
    }
}

编辑:这里是我的应用程序截图:

Right after disconnect

After 10-15 "11050" message

伙计 此代码:11050 表示一般故障

请求因未知原因失败。

有关详细信息,请参阅知识库文章 325487,"How to troubleshoot network connectivity problems" (http://go.microsoft.com/fwlink/?linkid=3052&kbid=325487)。