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