CVI调用VC封装WinDriver驱动的DLL

CVI调用VC封装WinDriver驱动的DLL(PCI驱动)

WinDriver生成的代码是标准C的,CVI用的也是标准C,如果用VC封装成DLL就需要注意下面几点:

1.     VC中的头文件中,输出文件需要用extern C”修饰,否则不能被CVI调用。(因为CVI是标准C

2.     调用约定必须用__stdcall,因为驱动中可能要采用win32 API

3.     __stdcall调用可能产生C不识别的修饰名,所以设置导出函数时要采用.def文件形式,而不是__declspec(dllexport)形式。后者会进行修饰名转换,C语言无法识别函数。

4.     LabWindows/CVI使用一个外部的DLL时,您需要一个导入library,把CVI的函数调用和对应的DLL函数定义链接起来。有时应用上述方法生成DLL时生成的静态库还有些问题,导致连接失败。此时就可以应用下述方法在CVI中生成静态库文件:Options</strong>”,再选择“Generate DLL Import Library</strong>”,会出现提示,通过浏览文件的方式选择DLL,生成导入libraryCVI于是会创建导入library,这样在CVI环境中,您可以在编译链接的时候包含这个导入library

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值