安装directshw遇到的问题及解决

在安装directshw过程中遇到了多个错误,包括预处理器定义冲突、调试信息格式设置、字符编码警告、类型重定义警告、不安全函数警告以及链接错误。解决方法包括修改项目属性中的预处理器定义、调试信息格式、禁用特定警告、更改MFC使用方式以及调整C运行时库配置。通过这些步骤,成功解决了所有问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

error: fatal error C1189: #error : _WIN32_WINNT settings conflicts with _WIN32_IE setting

项目属性 -> c/c++ -> 预处理器 -> 预处理器定义,里面有一个_WIN32_WINNT=0x400,改为_WIN32_WINNT=0x0500就好了。不用改代码

 

error:忽略“/EDITANDCONTINUE”(由于“/INCREMENTAL:NO”规范)

 选择项目,属性->配置属性->C/C++
修改调试信息格式程序数据库(/Zi)

 

error:该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为Unicode 格式以防止数据丢失

Project -> Properties -> Configuration Properties -> C/C++-> Advance Disable Specific Warnings 中添加相应的警告编号:4819;(实践成功)

error:C2371: “PTCHAR”: 重定义;不同的基类型

将wxdebug.h    //typedef WCHAR *PTCHAR;

 

warning C4996: 'strcpy': This function orvariable may be unsafe. Consider using strcpy_s instead. To disabledeprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.

还是根据warning提示的地三句话:use _CRT_SECURE_NO_WARNINGS
        
项目|属性|配置属性|C/C++|命令行|附加选项,加入【/D "_CRT_SECURE_NO_WARNINGS " (注:加入中括号中完整的内容)

 

error: link error

出现link错误   项目-》属性->配置属性-》常规-》MFC的使用改为 在静态库中使用MFC

 

error: const char * outFile)    改为    (TCHAR *outFile);

 

warning LINK : warning LNK4075忽略”/EDITANDCONTINUE”(由于”/INCREMENTAL:NO规范)

选择项目属性->配置属性->c/c++

  修改调试信息格式为程序数据库(/zi) 

warning LNK4098: 默认库“LIBCMTD”与其他库的使用冲突;请使用/NODEFAULTLIB:library

简单的方式就是将项目的动态库修改为使用Multithreaded DLL 版本的C运行时库即可。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值