主题:modbus—maste

  共有55927人关注过本帖    
客人
1楼


modbus—maste  发帖心情 Post By:2013-8-15 17:10:00   [只看该作者]

在进行modbus此类应用开发时,新建项目中,拷入modbus_master.h/ modbus_master.lib ,为嘛会提示有很多无法解析的外部符号??????是我使用方法的错误么。。。。

  单帖管理 | 引用 | 回复 回到顶部
x10
2楼


  发帖心情 Post By:2013-8-15 21:44:00   [只看该作者]

请问用的是什么主板?添加modbus库,请参考http://www.emtronix.com/article/article2013578.html 设置路径。

  单帖管理 | 引用 | 回复 回到顶部
客人
3楼


  发帖心情 Post By:2013-8-16 8:19:00   [只看该作者]

EM9170

  单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
yy
4楼 信息 | 搜索 | 邮箱


加好友 发短信
  发帖心情 Post By:2013-8-16 9:24:00   [只看该作者]

有很多无法解析的外部符号,多半原因是那个地方分号没打,或是哪个地方少打个括号之类的错误。

  单帖管理 | 引用 | 回复 回到顶部
客人
5楼


  发帖心情 Post By:2013-8-16 9:45:00   [只看该作者]


1>modbus_master.lib(MbusTcpMasterProtocol.obj) : error LNK2019: 无法解析的外部符号 WSACleanup,该符号在函数 "public: virtual void __cdecl MbusTcpMasterProtocol::closeProtocol(void)" (?closeProtocol@MbusTcpMasterProtocol@@UAAXXZ) 中被引用
1>modbus_master.lib(MbusTcpMasterProtocol.obj) : error LNK2019: 无法解析的外部符号 closesocket,该符号在函数 "public: virtual void __cdecl MbusTcpMasterProtocol::closeProtocol(void)" (?closeProtocol@MbusTcpMasterProtocol@@UAAXXZ) 中被引用
这样的错误提示不应该是您说的那种原因吧,我参考的是http://www.emtronix.com/product/ModBus_software.html里的软件使用方法,难道是我操作有错误??

  单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
yy
6楼 信息 | 搜索 | 邮箱


加好友 发短信
  发帖心情 Post By:2013-8-16 16:31:00   [只看该作者]

不是我上面说的错误,提示链接错误的函数定义在winsock2.h ,需要Ws2.lib,这些在SDK里面都有啊,我们提供的例程直接编译会有问题?你是什么板子,另外能留个邮箱吗?

  单帖管理 | 引用 | 回复 回到顶部
客人
7楼


  发帖心情 Post By:2013-8-16 16:41:00   [只看该作者]

你们给的modbus开发包没问题,只是我自己 参考http://www.emtronix.com/product/ModBus_software.html 另建时遇到问题,,1599758249@qq.com


  单帖管理 | 引用 | 回复 回到顶部
客人
8楼


  发帖心情 Post By:2013-8-16 16:48:00   [只看该作者]

请问Ws2.lib是在附赠光盘的SDK文件里吗????没找到。。。

  单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
yy
9楼 信息 | 搜索 | 邮箱


加好友 发短信
  发帖心情 Post By:2013-8-16 16:58:00   [只看该作者]

ws2.lib是你安装SDK后在SDK的目录下有,一般来说你只需要#include <winsock2.h>就行了。
[此贴子已经被作者于2013-8-16 16:58:33编辑过]

  单帖管理 | 引用 | 回复 回到顶部
客人
10楼


  发帖心情 Post By:2013-8-16 17:14:00   [只看该作者]

不好意思,此方法没成功。。。

  单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
yy
11楼 信息 | 搜索 | 邮箱


加好友 发短信
  发帖心情 Post By:2013-8-16 18:19:00   [只看该作者]

你在你工程的属性->Linker->Input的Additional Dependencies里面,看下ws2.lib加了没。
如果还是不行,看你方便不把你工程发我邮箱吧。yy@emtronix.com

  单帖管理 | 引用 | 回复 回到顶部
客人
12楼


  发帖心情 Post By:2013-8-16 18:55:00   [只看该作者]

手动添加后成功,非常感谢,但还想请教您每次都要手动添加而不是自动添加完成么?

  单帖管理 | 引用 | 回复 回到顶部
客人
13楼


  发帖心情 Post By:2013-8-16 18:59:00   [只看该作者]

板子是EM9170

  单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
yy
14楼 信息 | 搜索 | 邮箱


加好友 发短信
  发帖心情 Post By:2013-8-19 9:52:00   [只看该作者]

发现原因是,modbus_master.lib里有用到WSACleanup,GetAdaptersInfo,这些函数在ws2.lib和Iphlpapi.lib里,但是modbus_master工程并没有添加这两个库的引用,所以使用modbus_master.lib的工程需要添加这两个库,否则就会提示链接出错。

你添加引用后就可以正常使用,如果你觉得不方便,也可以告诉我邮箱或者发个邮件给我,我给你个新的modbus_master库。

  单帖管理 | 引用 | 回复 回到顶部

返回首页

modbus—maste

用户名:
            验证码: 验证码,看不清楚?请点击刷新验证码
内容: