string in BYTE
-
Hallo Leute,
ich versuche gerade daten aus der Datenabnk in die Gegistry zu speichern.
Ich hänge momentan daran, dass ich einen std::string habe und der eintrag in der registry ein BYTE benötigt.
std::string test = m_vDBRegSchluessel[i].strWert; BYTE cString[] = test; RegSetValueEx(hKey,m_vDBRegSchluessel[i].strVersions_Typ.c_str(),0,REG_SZ,cString,8);
kann mir jemand Helfen ??
Gru und Danke
andy_mann
-
Mit REG_SZ als dwtype gibst Du doch an, das es ein String ist, der eingetragen werden soll. Willst Du ein Byte eintragen, mußt Du entsprechend REG_DWORD (ist dann aber long) oder REG_BINARY mit der Länge 1 für BYTE angeben.
-
Hallo,
ich möchte schon ein REG_SZ haben.
Einen string nimmt er mir aber nicht an....error C2664: 'RegSetValueExA': Konvertierung des Parameters 5 von 'std::string' in 'const BYTE *' nicht möglich
BYTE cString[] = "Hallo";
nimmt er dagegen an.
Gruß
andy_mann
-
Ich habe es jetzt so gemacht..
CString m_strWert = m_vDBRegSchluessel[i].strWert.c_str(); int strLaenge = m_strWert.GetLength(); char String[50] = ""; strcpy (String,m_strWert); RegSetValueEx(hKey,m_vDBRegSchluessel[i].strVersions_Typ.c_str(),0,REG_SZ,(CONST BYTE*)String, strLaenge); RegCloseKey(hKey);
So funktioniert es.
Gruß
andy_mann