使用WSAIoctl需要include什么?

watt 2004-07-22 03:55:04
程序中有#include "winsock2.h"。为什么总是提示未定义?
...全文
184 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
watt 2004-07-23
  • 打赏
  • 举报
回复
D:\Test\GetIP.cpp(203) : error C2065: 'WSAIoctl' : undeclared identifier
homeyang 2004-07-23
  • 打赏
  • 举报
回复
是错误提示
homeyang 2004-07-23
  • 打赏
  • 举报
回复
把错误的代码贴出来看看
watt 2004-07-23
  • 打赏
  • 举报
回复
我加了:#pragma comment(lib,"ws2_32.lib")也不行
watt 2004-07-23
  • 打赏
  • 举报
回复
我把
#include "Winsock2.h"
#pragma comment(lib,"ws2_32.lib")
放入StdAfx.h中就好用子,是什么原因?为什么加入到别处就不好用?
ydfok 2004-07-23
  • 打赏
  • 举报
回复
我没发现什么问题

特意建了一个新的工程测试了一下
完全可以编译link通过的。

你还是看看工程哪里搞错了吧

我就用了
#include <Winsock2.h>
#pragma comment(lib,"ws2_32.lib")

别的都没用。
gracezhu 2004-07-22
  • 打赏
  • 举报
回复
我这边编译是可以的.你主要是ws2_32.lib没有加进去,别的地方没有问题
watt 2004-07-22
  • 打赏
  • 举报
回复
增加#include <mswsock.h>也不行,还是未定义!
elssann 2004-07-22
  • 打赏
  • 举报
回复
#include <mswsock.h>
watt 2004-07-22
  • 打赏
  • 举报
回复
如何加?
gracezhu 2004-07-22
  • 打赏
  • 举报
回复
编译了一下,你只要在project/settings下 include ws2_32.lib就行了
watt 2004-07-22
  • 打赏
  • 举报
回复
DWORD dwBytesReturned = 0;
struct sockaddr_in saTarget;
struct sockaddr_in saSource;
memset(&saSource, 0, sizeof(sockaddr_in));
memset(&saTarget, 0, sizeof(sockaddr_in));

SOCKET hSocket = socket(AF_INET , SOCK_STREAM, 0);

saTarget.sin_family = saSource.sin_family = AF_INET;
saTarget.sin_addr.s_addr = GetIP(m_ip);
WSAIoctl(hSocket, SIO_ROUTING_INTERFACE_QUERY, (LPVOID)&saTarget,
sizeof(sockaddr_in), (LPVOID)&saSource, sizeof(sockaddr_in),
&dwBytesReturned, NULL, NULL);

closesocket(hSocket);

return inet_ntoa(saSource.sin_addr);
gracezhu 2004-07-22
  • 打赏
  • 举报
回复
调用的这行语句写出来
watt 2004-07-22
  • 打赏
  • 举报
回复
不对,还是未定义
gracezhu 2004-07-22
  • 打赏
  • 举报
回复
是不是SIO_RCVALL 参数未定义??
需要包括<mstcpip.h>头文件
Kudeet 2004-07-22
  • 打赏
  • 举报
回复
#pragma comment(lib, "ws2_32")

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧