1

schrieb ich eine App in C++ und heruntergeladen einige Proben Code aus dem Internet (wie this und this), aber wenn ich versuche, den Code zu kompilieren ich Kompilierungsfehlern wie:VS 2010 C++ - Konvertierungsfehler

Fehler C2664: 'CertNameToStrW': nicht Parameter 4 von 'CHAR [1000]' zu

Fehler C2664 'LPWSTR' konvertiert: 'senden': nicht Parameter 2 aus umwandeln 'BYTE [200]' in ‚const char * '

und so weiter.

Natürlich kann ich es durch explizite Konvertierung wie in this Frage Frage gelöst lösen. aber ich möchte fragen, ob dieses Verhalten vernünftig ist? Ich nehme an, dass Microsoft-Leute ihren Code kompilieren, bevor sie ihn auf MSDN hochladen. Was vermisse ich? Vielleicht muss ich etwas installieren? Kann mir bitte jemand helfen?

Antwort

0

Sie benötigen Unicode aus den Projekteinstellungen deaktivieren Project Properties -> General -> Project Defaults -> Character Set oder win32 api Funktionen mit A Postfix wie CertNameToStrA statt CertNameToStr verwenden.