【问题标题】:How to ping an IP in Windows Phone 8.1如何在 Windows Phone 8.1 中 ping 一个 IP
【发布时间】:2015-04-21 01:45:25
【问题描述】:

我正在编写需要与服务器保持连接的Windows Phone 应用程序(准确地说是 Windows 服务应用程序)。我想 ping 服务器,比方说,每 1 秒捕获一次断开连接等。

另外我必须指出我正在使用Windows Phone SilverLight 8.1 项目(我不能在正常的Windows Phone 8.1 中执行此操作,因为不包括Socket 类)

到目前为止,我发现最快的方法是使用 System.Net.NetworkInformation 中的 Ping 类。问题是visual studio说没有Ping类。

好的,MSDN 文档没有提到 Windows Phone SilverLight 8.1 作为支持的平台。但是当我创建测试时Windows Phone 8.1 项目视觉再次说Ping 不存在。

Here is MSDN documentation page:

以下是支持的平台:

平台:
Windows Phone 8.1、Windows Phone 8、Windows 8.1、Windows Server 2012 R2、Windows 8、Windows Server 2012、Windows 7、Windows Vista SP2、Windows Server 2008(服务器不支持核心角色)、Windows Server 2008 R2(SP1 或更高版本支持服务器核心角色;不支持安腾)

为什么我不能使用 Ping 类?

如果这不是我的错(比如缺少程序集等),我该如何以不同的方式“ping”我的服务器应用程序?

【问题讨论】:

  • 我怀疑 ping 是保持连接的正确方法。为什么在下次尝试通信时不会意识到断开连接?
  • 我不确定这是否正确。我想通过 UDP 流式传输视频,并且我想通过 ping 确保连接状态(例如在重新连接后恢复发送/接收 UDP 包)。
  • 创建 UDP 连接不会为您提供连接状态吗?
  • 我认为波兰语版本提供的信息不正确。使用相同的链接,我刚刚将 Pl-pl 更改为 en-US 并且手机和 Windows 8 版本消失了 :)
  • 我从没想过……这真的很奇怪。我什至看不到英文版的Supported platforms 部分。我想我得自己写了。感谢您的精彩提示:)

标签: c# windows-phone-8.1 ping


【解决方案1】:

您正在寻找错误的 System.Net.Information 实现。您链接的是桌面 .NET 版本。对于正确的,您需要查看 Silverlight .NET 类库:https://msdn.microsoft.com/en-us/library/3ew4thdx(v=VS.95).aspx

Ping 在 Silverlight 中不可用,但您可以使用 Windows.Network.Sockets 实现自己的 ping 命令:

http://blogs.msdn.com/b/wsdevsol/archive/2013/03/19/datagram-socket-communication-in-windows-phone-8.aspx

【讨论】:

  • 都是真的。正如我在第一篇文章中提到的那样,我已经知道 Silverlight 没有这样的功能(顺便感谢上面的链接,我肯定会尝试写这个)。现在我很好奇为什么它在Windows Phone 8.1 中不起作用?文档说它受支持。
  • 根据@Muhammad Saifullah 发布的Windows Phone 8.1 也不支持。我将不得不制作自己的 Ping 课。再次感谢您的链接:)
猜你喜欢
  • 2012-06-30
  • 2023-04-03
  • 2014-06-25
  • 2016-04-15
  • 1970-01-01
  • 1970-01-01
  • 2012-07-15
  • 2014-06-19
  • 2016-11-21
相关资源
最近更新 更多