2017-12-20 13 views
-3

Mit CSocket möchte ich eine Verbindung mit einer IP-Adresse herstellen.WCHAR in LPCTSTR konvertieren

CSocket client; 
client.Create(); 
client.Connect(IP, 80); 

Aber IP ist WCHAR ip[16]; definiert

client.Connect(IP, 80) erfordert IP ist LPCTSTR Typ

Wie kann ich von WCHAR zu LPCTSTR konvertieren?

+1

posten Bitte, welchen Fehler Sie erhalten, wenn Sie zu verwenden versucht 'WCHAR'. – PaulMcKenzie

+1

Mögliches Duplikat von [Convert CString in const char \ *] (https://stackoverflow.com/questions/859304/convert-cstring-to-const-char) – IInspectable

Antwort

1

Wenn Sie für den Unicode-Zeichensatz (wie jedes Windows-Programm jünger als etwa 2000 soll) bauen, wird LPCTSTR ein typedef für LPCWSTR aka wchar_t const * sein, und ein wchar_t[] Array dass zerfallen würde.

Wenn Sie für den Multibyte-Zeichensatz erstellen, müssen Sie Ihre Daten konvertieren. Ich schlage vor, mit CW2T() dafür (es ist tatsächlich eine Klasse, ist aber fast immer als temporäre Objekt verwendet), zB:

client.Connect(CW2T(ip), 80); 
Verwandte Themen