22. februar 2005 - 12:53
Der er
9 kommentarer og 1 løsning
Hente data fra registrerings databasen
SKal hente data fra registrerings databasen, med nedenstående kode, alt andet end RegGetValue virker... Den siger at funktionen ikk findes :( Hvad gør jeg forkert? int intLength; HKEY hk; DWORD dwDisp; RegCreateKeyEx(HKEY_CURRENT_USER, "Software\\Duri", 0,NULL,REG_OPTION_NON_VOLATILE, KEY_WRITE,NULL, &hk, &dwDisp); if(dwDisp == REG_OPENED_EXISTING_KEY) { //Smid værdierne ind i felterne og classen.. RegGetValue(hk,"LogInterval",NULL,RRF_RT_ANY,NULL, LogInterval, intLength); } else { strcpy(LogInterval, "1"); RegSetValueEx(hk,"LogInterval",0,REG_SZ,LogInterval,strlen(LogInterval) + 1); } RegCloseKey(hk);
Annonceindlæg tema
Cloud & AI
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
22. februar 2005 - 12:56
#1
Jeg plejer at bruge RegQueryValueEx
22. februar 2005 - 12:57
#2
Kan du give mig et eks. på den? Be be be :D
22. februar 2005 - 12:57
#3
22. februar 2005 - 12:58
#4
#include <windows.h> #include <stdio.h> #include <string.h> void getinfo(char *key, char *name, char *info) { HKEY hk; if(RegOpenKeyEx(HKEY_LOCAL_MACHINE, key, 0, KEY_READ, &hk) == ERROR_SUCCESS) { DWORD valuelen,type; BYTE value[1024]; valuelen = sizeof(value); if(RegQueryValueEx(hk, name, NULL, &type, value, &valuelen) == ERROR_SUCCESS) { strcpy(info,(char *)value); } } RegCloseKey(hk); } int main(int argc, char **argv) { char info[12345]; strcpy(info,""); getinfo("SOFTWARE\\Microsoft\\Windows\\CurrentVersion", "DevicePath", info); printf("%s\n", info); return 0; }
22. februar 2005 - 13:33
#5
HKEY hk; DWORD dwDisp,dwLength = 4; RegCreateKeyEx(HKEY_CURRENT_USER, "Software\\Duri", 0,NULL,REG_OPTION_NON_VOLATILE, KEY_WRITE,NULL, &hk, &dwDisp); if(dwDisp == REG_OPENED_EXISTING_KEY) { //Smid værdierne ind i felterne og classen.. //RegGetValue(hk,"LogInterval",NULL,RRF_RT_ANY,NULL, LogInterval, intLength); RegQueryValueEx(hk,"LogInterval",NULL,NULL,LogInterval,&dwLength); } else { strcpy(LogInterval, "1"); RegSetValueEx(hk,"LogInterval",0,REG_SZ,LogInterval,strlen(LogInterval) + 1); } RegCloseKey(hk); Sådan ser min kode ud, LogInterval indeholder "" (Ingenting) også efter funktionen er kørt.. Noget galt?
22. februar 2005 - 13:35
#6
char LogInterval[4]; <- Definationen af LogInterval..
22. februar 2005 - 21:40
#7
Den retunere en LONG 5... Access denied... Hvad er problemet?
23. februar 2005 - 00:19
#8
Fik løst det, arne_v smider du et svar?
23. februar 2005 - 20:00
#9
Så tager jeg dem sgu selv ;)
23. februar 2005 - 20:08
#10
jeg havde slet ikke set at var kommet videre
Kurser inden for grundlæggende programmering