如何在WinCE5中使用原始套接字?

时间:2011-06-08 08:22:16

标签: windows-ce winsock raw-sockets

我需要在Windows CE 5.0中使用原始套接字。以下代码始终失败并显示错误

socket failed, err:10044
(此地址系列中不存在对指定套接字类型的支持。)

WSAData wsaData;
SOCKET s;
int n;

n = WSAStartup(MAKEWORD(2,0), &wsaData);

if (n < 0) {
  printf("WSAStartUp failed, err:%d\n", WSAGetLastError());
} else {
  s = socket(AF_INET, SOCK_RAW, IPPROTO_IP);

  if (s < 0)
  {
    printf("socket failed, err:%d\n", WSAGetLastError());
  }
}

在Windows CE中使用原始套接字我该怎么做?

2 个答案:

答案 0 :(得分:0)

我发现WinCE特定套接字的MSDN文档很少,但guide for desktop winsock非常好。

在尝试为WinCE 5.0编写我的第一个套接字应用程序时,我偶然发现了以下链接:

我希望你发现它们很有用。

请注意,即使上述文章适用于桌面,我也可以使用概念和代码进行少量修改。

答案 1 :(得分:0)

Windows CE 5.0不支持原始IP套接字。 您可以使用NDISUIO发送包含任意内容的数据包。