h3rmn Skrevet 26. oktober 2006 Skrevet 26. oktober 2006 (endret) Hei hvordan kan jeg opprette/slette/endre en fil i Regedit som f.eks REG_SZ eller REG_DWORD i c++ Endret 26. oktober 2006 av h3rmn
oladunk10 Skrevet 26. oktober 2006 Skrevet 26. oktober 2006 Hei hvordan kan jeg lage og sette en registre fil i c++? 7154684[/snapback] registre fil?
h3rmn Skrevet 26. oktober 2006 Forfatter Skrevet 26. oktober 2006 Hei hvordan kan jeg lage og sette en registre fil i c++? 7154684[/snapback] registre fil? 7154703[/snapback] Beklager dårlig ord bruk....
oladunk10 Skrevet 26. oktober 2006 Skrevet 26. oktober 2006 (endret) bruk av registeret: http://msdn.microsoft.com/library/default....he_registry.asp oppslagsverk eller API-dokumentasjon for registeret: http://msdn.microsoft.com/library/default....y_reference.asp Endret 26. oktober 2006 av oladunk10
h3rmn Skrevet 26. oktober 2006 Forfatter Skrevet 26. oktober 2006 bruk av registeret:http://msdn.microsoft.com/library/default....he_registry.asp oppslagsverk eller API-dokumentasjon for registeret: http://msdn.microsoft.com/library/default....y_reference.asp 7154862[/snapback] De måtene der var jo på en haug med sider fins det ikke noen letter måte og gjøre det på? Har drevet på med litt .NET VB og der var koden bare dette: Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click Registry.SetValue("HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Test", "Test9999", 1) End Sub Klikk på knappen og den oppretter Test9999 i mappen Test under HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion.
oladunk10 Skrevet 26. oktober 2006 Skrevet 26. oktober 2006 (endret) uhm .. har du tittet? `RegSetValueEx': http://msdn.microsoft.com/library/default....gsetvalueex.asp Endret 26. oktober 2006 av oladunk10
h3rmn Skrevet 26. oktober 2006 Forfatter Skrevet 26. oktober 2006 uhm .. har du tittet? `RegSetValueEx': http://msdn.microsoft.com/library/default....gsetvalueex.asp 7155164[/snapback] Prøvde med dette men det funket ikke så bra. Men jeg skulle jo lage en men denne bare satte keyen på en som var som jeg forstod det. Så jeg prøvde begge. Men den som står her er den som satte den. #include <windows.h> int main () { LONG RegSetValueEx(HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\, Test999, 0, REG_DWORD, test); } Hva gjør jeg feil? Kan du skrive et eksempel til deg?
oladunk10 Skrevet 26. oktober 2006 Skrevet 26. oktober 2006 hm .. det der er ikke gyldig C/C++ og matcher ikke signaturen til funksjonskallet jeg får ikke testet det jeg eventuelt skriver selv da jeg ikke bruker Windows (og har ikke tilgang til vmware+winxp ATM) - noen andre får ta seg av dette btw. om du får til dette i VB - hvorfor gjøre dette i C/C++ når du i utgangspunktet ikke kan språket? om du ser på eksemplet her http://msdn.microsoft.com/library/default....he_registry.asp så ser du at du først må kalle `RegCreateKeyEx' så `RegSetValueEx' så `RegCloseKey' på det `RegCreateKeyEx' returnerte .. ..det er en del pointer-tukling; om du ikke kan C/C++ og får til dette i VB så forstår jeg ikke hvorfor du ønsker å gjøre dette v.h.a. C/C++
h3rmn Skrevet 26. oktober 2006 Forfatter Skrevet 26. oktober 2006 Hvorfor c++? Tja, har mere lyst til og lære dette når jeg da er lei av VB og synes c++ så gøyere ut. Og bedre måte og lære noe på enn og spørr eog prøve fins ikke. Takk for hjelpen.
h3rmn Skrevet 26. oktober 2006 Forfatter Skrevet 26. oktober 2006 Har nå prøvd dette: #include <windows.h> #include <iostream> int main () { HKEY hKey; DWORD dwDisp = 0; LPDWORD lpdwDisp = &dwDisp; CString l_strExampleKey = "SOFTWARE\\Microsoft\\Exchange\\MSExchangeAdminCommon"; CString l_strDWordSample = "DWORDSample"; DWORD dwVal = 100; LONG iSuccess = RegCreateKeyEx( HKEY_CURRENT_USER, l_strExampleKey, 0L,NULL, REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS, NULL, &hKey,lpdwDisp); if(iSuccess == ERROR_SUCCESS) { RegSetValueEx (hKey, l_strDWordSample, 0L, REG_DWORD,(CONST BYTE*) &dwVal, sizeof(DWORD)); } } Men får bare dette i feilmelding: ------ Rebuild All started: Project: Test Prog, Configuration: Debug Win32 ------Deleting intermediate and output files for project 'Test Prog', configuration 'Debug|Win32' Compiling... main.cpp c:\documents and settings\hast5\mine dokumenter\visual studio 2005\projects\test prog\test prog\main.cpp(11) : error C2065: 'CString' : undeclared identifier c:\documents and settings\hast5\mine dokumenter\visual studio 2005\projects\test prog\test prog\main.cpp(11) : error C2146: syntax error : missing ';' before identifier 'l_strExampleKey' c:\documents and settings\hast5\mine dokumenter\visual studio 2005\projects\test prog\test prog\main.cpp(11) : error C2065: 'l_strExampleKey' : undeclared identifier c:\documents and settings\hast5\mine dokumenter\visual studio 2005\projects\test prog\test prog\main.cpp(12) : error C2146: syntax error : missing ';' before identifier 'l_strDWordSample' c:\documents and settings\hast5\mine dokumenter\visual studio 2005\projects\test prog\test prog\main.cpp(12) : error C2065: 'l_strDWordSample' : undeclared identifier Build log was saved at "file://c:\Documents and Settings\Hast5\Mine dokumenter\Visual Studio 2005\Projects\Test Prog\Test Prog\Debug\BuildLog.htm" Test Prog - 5 error(s), 0 warning(s) ========== Rebuild All: 0 succeeded, 1 failed, 0 skipped ==========
Giddion Skrevet 26. oktober 2006 Skrevet 26. oktober 2006 Du MÅ lære deg å tolke feilene din IDE gir deg. error C2065: 'CString' : undeclared identifier I VC hvis du ikke har noen ide om hva feilen betyr så slå opp error koden (her C2065) her står det ... A variable's type must be specified in a declaration before it can be used. The parameters that a function uses must be specified in a declaration, or prototype, before the function can be used. ... Så med andre ord så har du ikke deklarer CString. Dette er Alpha Omega når du programmerer. PS: det er ikke alltid feil nr 1 har skylden i feilene, men det pleier å være det. Og det er det i dette tilfellet Denne koden bruker std::basic_string istede for CString (MFC kode eller no) PS: Her bruker UNICODE! #include <windows.h> #include <string> int main () { HKEY hKey; DWORD dwDisp = 0; LPDWORD lpdwDisp = &dwDisp; std::basic_string <wchar_t> l_strExampleKey = L"SOFTWARE\\Microsoft\\Exchange\\MSExchangeAdminCommon"; std::basic_string <wchar_t> l_strDWordSample = L"DWORDSample"; DWORD dwVal = 100; LONG iSuccess = RegCreateKeyEx( HKEY_CURRENT_USER, l_strExampleKey.c_str(), 0L,NULL, REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS, NULL, &hKey,lpdwDisp); if(iSuccess == ERROR_SUCCESS) { RegSetValueEx (hKey, l_strDWordSample.c_str(), 0L, REG_DWORD,(CONST BYTE*) &dwVal, sizeof(DWORD)); } } lykke tid videre
h3rmn Skrevet 26. oktober 2006 Forfatter Skrevet 26. oktober 2006 Tusen Takk skal begynne og undersøke de nærmere.
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå