Konvertierungsprobleme
-
Hi!
Ich habe ziemliche Probleme mit den Typen in C (komme aus der Java-Ecke)...
Momentan will ich die Registry durchsuchen.
RegOpenKeyEx( HKEY_LOCAL_MACHINE, TEXT("SOFTWARE\\Classes\\CLSID\\"), 0, KEY_READ, &hTestKey);wenn ich den zweiten Paramter auf diese Weise übergeb funktioniert alles. Ich will ihn jetzt aber zusammensetzen. Also etwas in der Art
RegOpenKeyEx( HKEY_LOCAL_MACHINE, TEXT("SOFTWARE\\Classes\\CLSID\\" + "{CLSID}"), 0, KEY_READ, &hTestKey);Wie mache ich das? In der Doku steht der zweite Param ist vom Typ "LPCTSTR".
Die Variable die ich anhängen will ist übrigens vom Typ "char*". Ich will also einen fest angegebenen String mit einem char* verknüpfen.
Kann mir jemand helfen???
Grüße, Dirk
-
Man kann mit + Keine String zusammenhängen!
Strings sind char Array's und damit nicht einfach so zu bedienen.
Du kannst ensprechende Klassen wird std::string oder CString verwenden:CString strKey(_T("SOFTWARE\\Classes\\CLSID\\")); strKey += "{CLSID}"; RegOpenKeyEx( HKEY_LOCAL_MACHINE, strkey, 0, KEY_READ, &hTestKey);BTW: TEXT solltest wirklich nur verwenden wenn klar UNICODE gemeint ist. _T ist variabler, und erlaubt auch die spätere Nutzung als MBCS.