关于socket网络的一个小问题

以下是 Socket 网络编程的一段模板代码

void SocketText(void)

{

       WSADATA wsaData;

       // 初始化 socket

       WSAStartup(MAKEWORD(2,0),&wsaData);//MAKEWORD(2,0)ÊÇsocket°æ±¾

       //´ 创建一根电线

       SOCKET sock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);

       SOCKADDR_IN sa;

       sa.sin_family=AF_INET;

       // 设置电线连接服务器端的端口

       sa.sin_port = htons(IPPORT_SMTP);// 邮件服务端口

       // 主机获得 IP 地址

       sa.sin_addr.S_un.S_addr = inet_addr("123.125.50.135");

       if(connect(sock,(SOCKADDR *)&sa,sizeof(sa))==SOCKET_ERROR)

       {

              ShowError();

              return;

       }

       closesocket(sock);

       WSACleanup();

}

void ShowError()

{

       TCHAR* lpMsgBuf;

       FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER| // 自动分配消息缓冲区

       FORMAT_MESSAGE_FROM_SYSTEM, //´ 从系统获得消息

       NULL,GetLastError(), // 获取错误信息标识

       MAKELANGID(LANG_NEUTRAL,SUBLANG_DEFAULT),// 使用系统缺省语言

       (LPTSTR)&lpMsgBuf, // 消息缓冲区

       0,

       NULL);

       MessageBox(NULL,lpMsgBuf,"",MB_ICONERROR);

}

 

当然要添加 #include <winsock2.h> 头文件,但是在标准 C-Free 编译器中出现会出现 [Error] C:/PROGRA~1/C-FREE~1/mingw32/bin/ld.exe: cannot find - winsock2.lib 错误,此时工程设置里添加了 winsock2.lib ,当没有相同名字时,就找最相近的,现在问题来了,如果直接如下操作

则出现 ld.exe cannot find ID IP 提示错误,这时我们就要进行一个小小的处理,如下将


图( 1

图( 1 )操作改成下图( 2 )操作


图( 2

即直接输入库名,好,大功告成!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值