C++ TCp通信遇到的无法解析外部符号

C++ TCp通信遇到的无法解析外部符号当在VS2005编写WINCE程序时,如果包含WinSock2.h后使用socket的相关函数,则编译会出现如下错误:1>TcpServer.obj:errorLNK2019:无法解析的外部符号WSACleanup,该符号在函数”private:int__cdeclCTcpServer_CE::InitializeSocket(void)”(?InitializeSoc

大家好,又见面了,我是你们的朋友全栈君。

当在VS2005编写WINCE程序时,如果包含WinSock2.h后使用socket的相关函数,则编译会出现如下错误:

1>TcpServer.obj : error LNK2019: 无法解析的外部符号 WSACleanup,该符号在函数 “private: int __cdecl CTcpServer_CE::InitializeSocket(void)” (?InitializeSocket@CTcpServer_CE@@AAAHXZ) 中被引用
1>TcpServer.obj : error LNK2019: 无法解析的外部符号 WSAStartup,该符号在函数 “private: int __cdecl CTcpServer_CE::InitializeSocket(void)” (?InitializeSocket@CTcpServer_CE@@AAAHXZ) 中被引用
1>TcpServer.obj : error LNK2019: 无法解析的外部符号 ioctlsocket,该符号在函数 “private: static unsigned long __cdecl CTcpServer_CE::TcpListenTheadFunc(void *)” (?TcpListenTheadFunc@CTcpServer_CE@@CAKPAX@Z) 中被引用
1>TcpServer.obj : error LNK2019: 无法解析的外部符号 accept,该符号在函数 “private: static unsigned long __cdecl CTcpServer_CE::TcpListenTheadFunc(void *)” (?TcpListenTheadFunc@CTcpServer_CE@@CAKPAX@Z) 中被引用
1>TcpServer.obj : error LNK2019: 无法解析的外部符号 __WSAFDIsSet,该符号在函数 “private: static unsigned long __cdecl CTcpServer_CE::TcpListenTheadFunc(void *)” (?TcpListenTheadFunc@CTcpServer_CE@@CAKPAX@Z) 中被引用
1>TcpServer.obj : error LNK2019: 无法解析的外部符号 closesocket,该符号在函数 “private: static unsigned long __cdecl CTcpServer_CE::TcpListenTheadFunc(void *)” (?TcpListenTheadFunc@CTcpServer_CE@@CAKPAX@Z) 中被引用
1>TcpServer.obj : error LNK2019: 无法解析的外部符号 select,该符号在函数 “private: static unsigned long __cdecl CTcpServer_CE::TcpListenTheadFunc(void *)” (?TcpListenTheadFunc@CTcpServer_CE@@CAKPAX@Z) 中被引用
1>TcpServer.obj : error LNK2019: 无法解析的外部符号 WSAGetLastError,该符号在函数 “private: static unsigned long __cdecl CTcpServer_CE::TcpThreadFunc(void *)” (?TcpThreadFunc@CTcpServer_CE@@CAKPAX@Z) 中被引用
1>TcpServer.obj : error LNK2019: 无法解析的外部符号 recv,该符号在函数 “private: static unsigned long __cdecl CTcpServer_CE::TcpThreadFunc(void *)” (?TcpThreadFunc@CTcpServer_CE@@CAKPAX@Z) 中被引用
1>TcpServer.obj : error LNK2019: 无法解析的外部符号 listen,该符号在函数 “public: int __cdecl CTcpServer_CE::Open(void)” (?Open@CTcpServer_CE@@QAAHXZ) 中被引用
1>TcpServer.obj : error LNK2019: 无法解析的外部符号 bind,该符号在函数 “public: int __cdecl CTcpServer_CE::Open(void)” (?Open@CTcpServer_CE@@QAAHXZ) 中被引用
1>TcpServer.obj : error LNK2019: 无法解析的外部符号 htonl,该符号在函数 “public: int __cdecl CTcpServer_CE::Open(void)” (?Open@CTcpServer_CE@@QAAHXZ) 中被引用
1>TcpServer.obj : error LNK2019: 无法解析的外部符号 htons,该符号在函数 “public: int __cdecl CTcpServer_CE::Open(void)” (?Open@CTcpServer_CE@@QAAHXZ) 中被引用
1>TcpServer.obj : error LNK2019: 无法解析的外部符号 socket,该符号在函数 “public: int __cdecl CTcpServer_CE::Open(void)” (?Open@CTcpServer_CE@@QAAHXZ) 中被引用
1>TcpServer.obj : error LNK2019: 无法解析的外部符号 send,该符号在函数 “public: int __cdecl CTcpServer_CE::SendData(char const *,unsigned long)” (?SendData@CTcpServer_CE@@QAAHPBDK@Z) 中被引用

网上找了很久都没有解决方法,错误产生的原因是由于在WIN32智能设备控制台时使用了MFC的API,有很多网友说包含:#pragma comment(lib, “ws2_32.lib”)就可以解决,实际上对于WINCE控制台程序还是无法使用,可以考虑使用#pragma comment(lib, “winsock.lib”)即使用version 1.0的库,但是还会有一些无法找到,个人摸索了好久,终于找到解决方法,#pragma comment(lib, “ws2.lib”),一切搞定。特共享给有同样烦恼的朋友。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/153490.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 如何使用Fiddler模拟弱网情况对app进行测试「建议收藏」

    前言很多时候,我们需要在弱网情况下,对app进行测试,不可能将app放置到离路由器很远的地方,这里可以模拟弱网来测试app。那么,我们这里使用Fiddler工具来模拟弱网。使用speedtest在线测速工具来测试网络。一、Fiddler工具连接手机,设置代理打开Fiddler,进入到Tools—>options,如图所示:再次选择Connection

  • js indexOf 的正确用法「建议收藏」

    js indexOf 的正确用法「建议收藏」indexOf在js中有着重要的作用,可以判断一个元素是否在数组中存在,或者判断一个字符是否在字符串中存在,如果存在返回该元素或字符第一次出现的位置的索引,不存在返回-1。例如vararr=[1,2,3];console.log(arr.indexOf(2));//打印结果为1又或者varstr=”helloworld”;console.log(str.indexOf(“w”));//打印结果为5那么,当想删除某个数组中的某个元素时,常常会这么

  • LeetCode解题汇总目录

    此篇为学习完《数据结构与算法之美》后,在LeetCode刷题的汇总目录,方便大家查找(Ctrl+Find),一起刷题,一起PK交流!另有解题:《剑指Offer》、《程序员面试金典》、LintCode代码能力测试CAT。如果本文对你有帮助,可以给我点赞加油!通过2021,简单618/636,中等1120/1266,困难283/488

  • 如何使用TCP Traceroute

    如何使用TCP Traceroute与发送UDP或ICMPECHO数据包的传统跟踪路由不同,TCP跟踪路由使用TCP数据包,因此可以绕过最常见的防火墙过滤器。请遵循以下说明以运行TCPTraceroute:对于Windows用户 对于Mac用户 对于Linux用户对于Windows用户,Windows没有本机实用程序来运行TCPtraceroute。要在Windows上运行它,您将需要安装WinPcap库并下载tracetcp实用程序。要安装WinPcap库,请执行以下步骤:1.下载WinPcap库。2.双击下载.

  • spss双因素方差分析结果解读_单因素方差分析例题

    spss双因素方差分析结果解读_单因素方差分析例题作业要求:高低不同的汽油对汽车油耗作二因素方差分析 作业数据:三种品牌的汽车X、Y、Z;四种标号(A、B、C、D) A B C D X 21.8 22.4 20.6 23.1 Y 31.3 34.2 30.6

    2022年10月20日
  • 黑苹果从入门到精通:最详细的VMware安装macOS教程[通俗易懂]

    黑苹果从入门到精通:最详细的VMware安装macOS教程[通俗易懂]前言不知为何,以前我发的两篇关于黑苹果的文章或没过审或被删除,最近SMZDM上有不少优质的黑苹果文章发出来,貌似禁令已开,前段时间在一篇写的很不错的黑果文章下吹牛说今年要写一个系列,故有了这篇文章作为系列的开头。系列的名字起的有点俗,叫做xxx从入门到精通,但是我很喜欢,相信过半的黑果群众都是程序员,作为教程来说这个名字俗但是好用,我也希望这个系列能像其它入门到精通系列一样,让大家学到东西…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号