菜鸟提问,为什么socket()总是返回INVALID_SOCKET,谢谢指教

decade 2004-03-17 08:03:51
#include "winsock2.h"
#include "stdlib.h"
#include "string.h"
#pragma comment (lib,"wsock32.lib")
#pragma comment (lib,"ws2_32.lib")

SOCKET listensocket;//定义为全局变量

if((listensocket=socket(AF_INET,SOCK_DGRAM,0))==INVALID_SOCKET ) {
AfxMessageBox("socket()调用失败");

}

每次运行都提示失败,不知道为什么。谢谢各位大侠指教。
...全文
2033 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
decade 2004-03-19
  • 打赏
  • 举报
回复
还是不行啊,总提示失败,郁闷ing~~~~~~!
elssann 2004-03-17
  • 打赏
  • 举报
回复
local.sin_addr.S_un.S_addr = htonl(INADDR_ANY);

改为saddr.sin_addr.s_addr = htonl(INADDR_ANY);
elssann 2004-03-17
  • 打赏
  • 举报
回复
saddr.sin_family = AF_INET;
saddr.sin_addr.s_addr = inet_addr("192.168.10.52");
saddr.sin_port = htons(9009);
if((s=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP))==SOCKET_ERROR)
{
printf("error!socket failed!\n");
return ;
}

if(bind(s,(SOCKADDR *)&saddr,sizeof(saddr))==SOCKET_ERROR)
{
ret=GetLastError();
printf("error!bind failed!\n");
return ;
}
huangbeyond 2004-03-17
  • 打赏
  • 举报
回复
SOCKADDR_IN local;//修改
local.sin_family=AF_INET;
local.sin_addr.S_un.S_addr=htonl(INADDR_ANY);
local.sin_port=htons(8000);//修改
if(bind(listensocket,(struct sockaddr *)&local,sizeof(local)==SOCKET_ERROR))
{
AfxMessageBox("bind()调用失败");
TRACE("error is %d,",WSASetLastError());//修改


}


先这样试试,看行不行.
decade 2004-03-17
  • 打赏
  • 举报
回复
if(bind(listensocket,(struct sockaddr *)&local,sizeof(local)==SOCKET_ERROR))
{
AfxMessageBox("bind()调用失败");
TRACE("error is %d,",GetLastError());
}

TRACE()输出0
decade 2004-03-17
  • 打赏
  • 举报
回复
谢谢,确实是没调用WSAStartup,但是新问题又出现了,

sockaddr_in local;

local.sin_family=AF_INET;
local.sin_addr.S_un.S_addr=htonl(INADDR_ANY);
local.sin_port=8000;

if(bind(listensocket,(struct sockaddr *)&local,sizeof(local)==SOCKET_ERROR))
{
AfxMessageBox("bind()调用失败");
}

运行提示失败,谢谢指教
decade 2004-03-17
  • 打赏
  • 举报
回复
up
GeorgeHunter 2004-03-17
  • 打赏
  • 举报
回复
是不是没调用SWAStartUp??用WSAGetLastError()取错误码发出来看看。

18,356

社区成员

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

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