1

我无法将原始数据包从Windows Phone发送到远程客户端。如何发送原始数据包

对于原始数据包,SocketType枚举中也没有枚举值。

但我仍然可以在windows phone marketplace中看到很多应用程序,它可以发送和接收原始数据包。例如。 ICMP数据包

有人可以告诉我如何在C#中做到这一点,或者如果我需要编写一个c + + dll,然后执行P/Invoke?

回答

1

Windows手机基于Windows Embedded compact,以前称为Windows CE。

虽然我使用Windows CE,但它不支持原始套接字。发送原始数据包需要一个协议驱动程序。如果您不愿意编写自己的协议驱动程序,则可以尝试NDISUIO。它是一个具有附加流驱动程序接口的协议驱动程序。当某些ioctl呼叫时,您可以指示它发送(并接收)原始数据包。

Windows phone 7基于Windows CE 6.0,但我认为NDISUIO也可以在这里找到。