芯路恒电子技术论坛

 找回密码
 立即注册

扫一扫,访问微社区

热搜: 活动
查看: 147|回复: 4

VS2013/5/7添加CyAPI.lib报错:error LNK2019

[复制链接]
  • TA的每日心情
    开心
    2018-10-24 21:56
  • 93

    主题

    201

    帖子

    8647

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    8647
    发表于 2018-11-13 19:54:30 | 显示全部楼层 |阅读模式
    1>CyAPI.lib(CyAPI.obj) : error LNK2019: 无法解析的外部符号 __imp__SetupDiDestroyDeviceInfoList@4,该符号在函数 "public: unsigned char __thiscall CCyUSBDevice:eviceCount(void)" (?DeviceCount@CCyUSBDevice@@QAEEXZ) 中被引用
    1>CyAPI.lib(CyAPI.obj) : error LNK2019: 无法解析的外部符号 __imp__SetupDiEnumDeviceInterfaces@20,该符号在函数 "public: unsigned char __thiscall CCyUSBDevice:eviceCount(void)" (?DeviceCount@CCyUSBDevice@@QAEEXZ) 中被引用
    1>CyAPI.lib(CyAPI.obj) : error LNK2019: 无法解析的外部符号 __imp__SetupDiGetClassDevsA@16,该符号在函数 "public: unsigned char __thiscall CCyUSBDevice:eviceCount(void)" (?DeviceCount@CCyUSBDevice@@QAEEXZ) 中被引用
    1>CyAPI.lib(CyAPI.obj) : error LNK2019: 无法解析的外部符号 __imp__SetupDiGetDeviceInterfaceDetailA@24,该符号在函数 "public: bool __thiscall CCyUSBDevice::CreateHandle(unsigned char)" (?CreateHandle@CCyUSBDevice@@QAE_NE@Z) 中被引用
    1>CyAPI.lib(CyAPI.obj) : error LNK2019: 无法解析的外部符号 _sprintf,该符号在函数 "public: void __thiscall CCyUSBDevice::UsbdStatusString(unsigned long,char *)" (?UsbdStatusString@CCyUSBDevice@@QAEXKPAD@Z) 中被引用
    ---------------------
    作者:王小波门下走狗
    来源:CSDN
    原文:https://blog.csdn.net/wangzhichunnihao/article/details/78480493
    版权声明:本文为博主原创文章,转载请附上博文链接!


    解决方法:

    给VS2017添加附加依赖库:下面2个,(SETUPAPI.lib是必须加的)。
    SetupAPI.lib                               VS2017比VS2015需要多加个这个库。。。
    legacy_stdio_definitions.lib          VS2015和VS2017中必须加的 。。
    ---------------------
    作者:王小波门下走狗
    来源:CSDN
    原文:https://blog.csdn.net/wangzhichunnihao/article/details/78480493
    版权声明:本文为博主原创文章,转载请附上博文链接!

    回复

    使用道具 举报

  • TA的每日心情
    开心
    3 小时前
  • 22

    主题

    238

    帖子

    3349

    积分

    超级版主

    Rank: 8Rank: 8

    积分
    3349
    发表于 2018-11-13 20:35:24 | 显示全部楼层
    666,厉害了
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2018-10-24 21:56
  • 93

    主题

    201

    帖子

    8647

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    8647
     楼主| 发表于 2018-11-24 21:35:04 | 显示全部楼层

    1>LIBCMT.lib(setlocal.obj) : error LNK2005: __configthreadlocale 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义

    1>LIBCMT.lib(tidtable.obj) : error LNK2005: __encode_pointer 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
    1>LIBCMT.lib(tidtable.obj) : error LNK2005: __decode_pointer 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
    1>LIBCMT.lib(invarg.obj) : error LNK2005: __invoke_watson 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
    1>LIBCMT.lib(crt0dat.obj) : error LNK2005: __amsg_exit 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
    1>LIBCMT.lib(crt0dat.obj) : error LNK2005: __initterm_e 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
    1>LIBCMT.lib(crt0dat.obj) : error LNK2005: _exit 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
    1>LIBCMT.lib(crt0dat.obj) : error LNK2005: __exit 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
    1>LIBCMT.lib(crt0dat.obj) : error LNK2005: __cexit 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
    1>LIBCMT.lib(mlock.obj) : error LNK2005: __unlock 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
    1>LIBCMT.lib(mlock.obj) : error LNK2005: __lock 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
    1>LIBCMT.lib(winxfltr.obj) : error LNK2005: __XcptFilter 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
    1>LIBCMT.lib(calloc.obj) : error LNK2005: _calloc 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
    1>LIBCMT.lib(realloc.obj) : error LNK2005: __recalloc 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
    1>LIBCMT.lib(crt0init.obj) : error LNK2005: ___xi_a 已经在 msvcrtd.lib(cinitexe.obj) 中定义
    1>LIBCMT.lib(crt0init.obj) : error LNK2005: ___xi_z 已经在 msvcrtd.lib(cinitexe.obj) 中定义
    1>LIBCMT.lib(crt0init.obj) : error LNK2005: ___xc_a 已经在 msvcrtd.lib(cinitexe.obj) 中定义
    1>LIBCMT.lib(crt0init.obj) : error LNK2005: ___xc_z 已经在 msvcrtd.lib(cinitexe.obj) 中定义
    1>LIBCMT.lib(hooks.obj) : error LNK2005: "void __cdecl terminate(void)" (?terminate@@YAXXZ) 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
    1>LIBCMT.lib(dosmap.obj) : error LNK2005: __errno 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
    1>LIBCMT.lib(errmode.obj) : error LNK2005: ___set_app_type 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
    1>msvcrtd.lib(MSVCR80D.dll) : error LNK2005: __setmbcp 已经在 LIBCMT.lib(mbctype.obj) 中定义
    1>LINK : warning LNK4098: 默认库“msvcrtd.lib”与其他库的使用冲突;请使用 /NODEFAULTLIB:library
    1>LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library

    1>LIBCMT.lib(crt0.obj) : error LNK2019: 无法解析的外部符号 _main,该符号在函数 ___tmainCRTStartup 中被引用


    链接器->输入->忽略特定库: libcmt.lib


    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2018-10-24 21:56
  • 93

    主题

    201

    帖子

    8647

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    8647
     楼主| 发表于 2018-11-24 21:36:06 | 显示全部楼层
    error LNK2026: 模块对于 SAFESEH 映像是不安全的

    错误描述:

    在使用VS2012编译工程时,提示错误:" error LNK2026: 模块对于 SAFESEH 映像是不安全的"



    解决方法:

    1.打开该项目的“属性页”对话框。

    2.单击“链接器”文件夹。

    3.单击“命令行”属性页。

    4.将 /SAFESEH:NO 键入“其他选项”框中,然后点击应用。
    ---------------------
    作者:swanabin
    来源:CSDN
    原文:https://blog.csdn.net/swanabin/article/details/42679227
    版权声明:本文为博主原创文章,转载请附上博文链接!

    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2018-10-24 21:56
  • 93

    主题

    201

    帖子

    8647

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    8647
     楼主| 发表于 2018-11-25 11:17:00 | 显示全部楼层
    const char* 类型形参与LPWSTR 类型的实参不兼容

    在用VS2012,VS2013编译自己或者网上的源代码时会提示如下错误“LPWSTR 类型的实参与const.char 类型形参不兼容”,如果我们在VC6.0上运行是不会提示这个错误的。主要原因是VC6默认使用字符ANSII编码方而VS2010、VS2012、Visual Studio 2013默认使用UNICODE编码方式。它们对一些字符所占内存空间的位数不同,为了向下兼容,可以在VS中通过修改配置-常规-“使用unicode编码”改成“使用多字节字符集”
    回复 支持 反对

    使用道具 举报

    *滑动验证:
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|小黑屋|手机版|Archiver|芯路恒电子技术论坛  

    GMT+8, 2018-12-19 11:53 , Processed in 0.104164 second(s), 9 queries , File On.

    Powered by Discuz! X3.3

    © 2001-2017 Comsenz Inc. Template By 【未来科技】【 www.wekei.cn 】

    快速回复 返回顶部 返回列表