加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

.net – 如何以编程方式刷新Windows Mobile中的DNS缓存?

发布时间:2020-12-14 05:29:19 所属栏目:Windows 来源:网络整理
导读:我的 Windows移动应用程序(使用紧凑框架用C#编写)需要知道特定机器是否处于活动状态. 为了实现这个目标,我想使用ping机制.我尝试使用在opennetcf框架中实现的Ping类(.NET Framework的System.Net.NetworkInformation.Ping类不是紧凑框架的一部分). 因为我向Pi
我的 Windows移动应用程序(使用紧凑框架用C#编写)需要知道特定机器是否处于活动状态.

为了实现这个目标,我想使用ping机制.我尝试使用在opennetcf框架中实现的Ping类(.NET Framework的System.Net.NetworkInformation.Ping类不是紧凑框架的一部分).

因为我向Ping.Send函数提供主机名,它首先尝试解析此主机名并检索IP地址.

但我观察到以下问题:
如果第一个DNS解析失败(因为此时网络已关闭),并且如果应用程序再次立即尝试发送ping,则它也会失败,即使网络再次记录下来也是如此.
我查看了一个着名的网络协议分析仪,我发现只发送了有关第一个DNS解析的请求.不发送关于第二次ping的DNS解析的请求.

为什么没有发送第二个DNS请求?
这样的Windows Mobile设备上是否有任何dns缓存机制?
如果是的话,这个机制可以通过编程方式刷新吗?

编辑:我放弃了寻找这个DNS刷新的解决方案.
我选择ping IP地址而不是名称机器.
ping硬编码地址IP的问题是我们必须100%确定此IP不会改变.
可以使用网关IP,因为它总是可以访问的(如果没有,则表示网络已关闭).

解决方法

这是一个很好的问题,并进行了一些挖掘

我知道这个答案可能会迟到,但试一试

http://social.msdn.microsoft.com/Forums/en-US/vssmartdevicesnative/thread/7eda3979-6424-4702-89f4-1f586b613b01

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读