Warum kann ich nicht einen größeren Wert als 9 aus der Registry auslesen?
-
Warum kann ich mit folgendem Code keinen Wert aus der Reg auslesen der größer ist als 9?
key.Open(HKEY_CURRENT_USER, "Software\\AK", KEY_READ); key.QueryValue(buffer, "Muellpreis", &dwCount); key.Close(); m_Waste = atof(buffer); UpdateData(FALSE);Gruß
andreas
-
Kann mir da keiner helfen?
-
Was ist buffer?
Was ist m_Waste?
Was steht in dem Registrywert?
Was gibt Open zurück?
Was gibt QueryValue zurück?
Was steht vor dem Aufruf von QueryValue in dwCount?
Was steht nach dem Aufruf von QueryValue in dwCount?
Was steht nach dem Aufruf von QueryValue in buffer?Warum wunderst du dich, dass dir niemand antwortet, wenn man dir die wichtigen Informationen aus der Nase ziehen muss?
-
..warum nimmst du nicht QueryValueEx?
-
hi
kann queryvlaueex nicht nehmen, da ich diese Funktion nicht hab? Weis auch net warum hab den aktuellen Servicepack aufgespielt?
void CMietView::OnChangeStromPubNew() { CRegKey key; UpdateData(TRUE); m_PubKwh = m_StromPubNew - m_StromPubOld; //Preis pro kw/h aus reg auslesen char buffer[256]; DWORD dwCount = sizeof(buffer); double v; key.Open(HKEY_CURRENT_USER, "Software\\AK", KEY_READ); key.QueryValue(buffer, "Strompreis", &dwCount); key.Close(); v = atof(buffer); //Perosnenanzahl aus Registry auslesen CString str; str = "Software\\AK\\Data\\"; str += m_strName; int pers; key.Open(HKEY_CURRENT_USER, str, KEY_READ); key.QueryValue(buffer, "Pers", &dwCount); key.Close(); pers = atoi(buffer); m_PubKwh = (m_PubKwh / 6) * pers; //Summe brechnen m_SumStrom = ((m_kwh + m_PubKwh) * v) + (((m_kwh + m_PubKwh) * v) * 0.07); m_SumStrom += 19.94; //Müllpreis mit updaten key.Open(HKEY_CURRENT_USER, "Software\\AK", KEY_READ); key.QueryValue(buffer, "Muellpreis", &dwCount); key.Close(); m_Waste = atof(buffer); UpdateData(FALSE); }double m_WasteFunktioniert mit allen Kommawerten unter 10 ab dann kann er nicht mehr lesen!
-
Du musst dwCount vor jedem QueryValue auf sizeof(buffer) setzen, weil da die Anzahl der gelesenen Bytes reingeschrieben wird.
-
DAnke funktioniert!!!