1

我写C++应用程序,并从网上下载了一些样本代码(如thisthis), 但是当我尝试编译的代码,我得到这样的编译错误:VS 2010 C++ - 转换错误

错误C2664: 'CertNameToStrW':无法从 'CHAR [1000]' 转换参数4 'LPWSTR'

错误C2664: '发送':不能从转换参数2 'BYTE [200]' 到“常量字符*'

等等。

当然,我可以通过像this问题中建议的显式转换来解决它。 但我想问这种行为是否合理?我假设微软的人在将代码上传到MSDN之前编译它们的代码。我错过了什么?也许我必须安装一些东西?任何人都可以请帮忙?

回答

0

您需要关闭从项目设置Project Properties -> General -> Project Defaults -> Character SetUnicode或使用Win32 API函数与A后缀像CertNameToStrA而不是CertNameToStr