发送平异步回复返回 11050

本文关键字:返回 11050 回复 异步 | 更新日期: 2023-09-27 17:55:36

我正在尝试使用SendPingAsync制作一个简单的ping应用程序。但是,pingReply.Status.ToString() 在连接断开时返回奇怪的数字"11050"。它将返回不成功的消息,如"超时"或"目的地主机无法访问",但几秒钟后。什么意思?

这是我的代码:

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);
    }
}

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

断开连接后立即

10-15 后出现"11050"消息

发送平异步回复返回 11050

伙计

此代码:11050表示一般故障

由于未知原因,请求失败。

有关详细信息,请参阅知识库文章 325487"如何解决网络连接问题"(http://go.microsoft.com/fwlink/?linkid=3052&kbid=325487)。