Veröffentlicht 26. Januar 201114 j Hallo an alle, Ich habe ein Problem vllt kann mir jmd helfen ALSO: Ich hab ein prog das Werte aus der Registry ausließt und auflistet und man diese dann umsortieren kann. Dazu brauch ich bei RegQueryValueEx den parameter LPCSTR lpValueName. Dieses hab ich durch CString s; POSITION pos = NULL; pos = m_listEnv.GetFirstSelectedItemPosition(); SelectedIndex = m_listEnv.GetNextSelectedItem(pos); s = m_listEnv.GetItemText(SelectedIndex, 0); dann mache ich so dies und das: LONG retn = RegOpenKeyEx(HKEY_LOCAL_MACHINE, m_registryKey, 0L, MAXIMUM_ALLOWED, ®Key); try { if(RegQueryValueEx(regKey, s, NULL, &dwType, NULL, &buffersize)==ERROR_SUCCESS) { m_EnvTokEntries = 0; int zaehler = 0; puffer = (TCHAR*)calloc(buffersize+1, sizeof(TCHAR)); if(RegQueryValueEx(regKey, s, NULL, &dwType, (unsigned char*) puffer, &buffersize)==ERROR_SUCCESS) { TCHAR* tok; tok = strtok(puffer, ";"); while(tok) { alltext[zaehler] = (TCHAR*)_tcsdup(tok); m_EnvTokEntries++; alltext = (TCHAR**)realloc(alltext, ++num_strings * sizeof(TCHAR*)); tok = strtok(NULL, ";"); zaehler++; } UpdateData(true); _tcscpy(speicher, alltext[m_sollVar-1]); _tcscpy(alltext[m_sollVar-1], alltext[m_toVar-1]); _tcscpy(alltext[m_toVar-1], speicher); *speicher = _T('\0'); zaehler = 0; while(zaehler<m_EnvTokEntries) { _tcscat(speicher, alltext[zaehler]); zaehler++; if(zaehler<m_EnvTokEntries) /*HIER*/ _tcscat(speicher, ";"); // <----HIER beim 4. durchlauf } if(RegSetKeyValue(regKey, s, NULL, dwType, speicher, buffersize)==ERROR_SUCCESS) MessageBox("Values have been transponsed.", "Hooray!", MB_OK|MB_ICONSTOP|MB_SETFOREGROUND); } } m_toVar=0; m_sollVar=0; UpdateData(false); if(alltext != NULL) free(alltext); if(puffer!=NULL) free(puffer); } catch(...) { MessageBox("Invalid pointer exception!\n Error reading files filter list.", "ProcessView", MB_OK|MB_ICONSTOP|MB_SETFOREGROUND); } RegCloseKey(regKey); In der letzen Schleife (Siehe Kommentar^^) beim 4. Durchlauf ist auf einmal mein "s" nur noch "mist", wenn ich aus der schleife draußen bin steht nix mehr in meinem CString woran kann des liegen? Bin für jeden vorschlag offen Danke schon mal im voraus Schönen Tag noch allen dies Lesen lg _Faby_
26. Januar 201114 j Autor damn ja klar ^^ ach dass ich des ned gesehen hab... so ein mist Vielen dank
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.