首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Traceroute结果

Traceroute结果
EN

Stack Overflow用户
提问于 2020-03-16 15:37:51
回答 1查看 555关注 0票数 0

我一直在查看来自博客文章的Traceroute代码。

问题是,当我试图将结果获取到C#表单时。我得到的唯一东西是一行完成的IP,hop,ms和IP。我试图获得一个列表或能够添加(字符串(跟踪路由到172.217.7.174,最多30跳:)跳,ms和IP地址)到ListView。

代码语言:javascript
复制
private async void btnAwait_Click(object sender, EventArgs e)
{
    var Results = await asyncTraceRoute.TryTraceRouteInternalAsync("google.com", 30);
    txtTraceroute.Text = Results.Message;
}

在这方面的帮助将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-03-16 18:24:37

方法的名称(TryTraceRouteInternalAsync)实际上暗示某些事情是以不正确的方式进行的。

这个方法只调用一个ping,这就是为什么您只得到一个结果。

您需要调用的实际方法是TryTraceRouteAsync,但我强烈感觉您选择了另一个方法,因为它返回一个带有字符串消息属性的可访问对象。

如果执行以下操作,TryTraceRouteAsync方法将异步调用TryTraceRouteInternalAsync (MAX_HOPS = 15) 15次,并将所有结果写入streamWriter。

您只需调用此方法,并获得所需的所有结果:

代码语言:javascript
复制
    private async Task<string> TraceRt()
    {
        MemoryStream memoryStream = new MemoryStream();
        StreamWriter streamWriter = new StreamWriter(memoryStream);
        await TraceRoute.TryTraceRouteAsync("google.com.tr", streamWriter);
        streamWriter.Flush();
        memoryStream.Position = 0;
        StreamReader stringReader = new StreamReader(memoryStream);
        return stringReader.ReadToEnd();
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60708914

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档