Tjena! vill att en kod skall läsa av detta HKEY_LOCAL_USER\Software\Software\Valve\CounterStrike\Settings tackar, men jag e inte så haj på det nej, får se om nån annan svarar! men tack så mycket. Hej hallå sven, koden ser väldigt vettig ut, men jag fick den inte att fungra! bör tilläggas att jag kör WinXP. Kolla den här:Läsa från registret - har testat allt.
HKEY_LOCAL_USER\Software\Software\Valve\CounterStrike\Settings
och Key´n som heter "Key" sen så skall sen få fram ett antal siffror (värdet) och visa detta i en TextBox.. hur?
nån som skulle kunna lägga upp en fungerande kod?
tack på förhand.Sv: Läsa från registret - har testat allt.
Först måste du kolla upp om det är HKEY_LOCAL_MACHINE eller HKEY_CURRENT_USER du menar. Det går inte att blanda ;-)
Att hämta ut värdet ser ut så här på Windowsspråk: (api)
<code>
HKEY hKey;
DWORD dwLen = 256;
char buf[256];
RegOpenKeyEx(HKEY_CURRENT_USER, "Software\\Software\\Valve\\CounterStrike\\Settings", 0, KEY_QUERY_VALUE, &hKey);
RegQueryValueEx(hKey, "Key", NULL, NULL, buf, &dwLen);
RegCloseKey(hKey);
</code>
Själv vet jag dock inte hur man skriver för att använda winapi i VB, men om du inte heller vet borde du kunna få hjälp med det av någon annan.Sv: Läsa från registret - har testat allt.
Sv: Läsa från registret - har testat allt.
Ett exempel rakt och ner som du kan analysera
Dim rc As Long ' Return Code
Dim hkey As Long ' Handle To An Open Registry Key
Dim bool As Boolean
Dim KeyVal As String
Dim KeyValType As Long ' Data Type Of A Registry Key
Dim tmpVal As String 'Tempory Storage For A Registry Key Value
Dim KeyValSize As Long 'Size Of Registry Key Variable
' Öpnar Win 95/98 versionen
rc = RegOpenKeyEx(HKEY_LOCAL_MACHINE, _
"SOFTWARE\Microsoft\Windows\CurrentVersion", _
0, &H1, hkey)
If rc <> 0 Then GoTo GetKeyError
KeyVal = String$(1024, 0) ' Allocate Variable Space
KeyValSize = 1024 ' Mark Variable Size
'------------------------------------------------------------
' Retrieve Registry Key Value...
'------------------------------------------------------------
' Get/Create Key Value
rc = RegQueryValueEx(hkey, "RegisteredOwner", 0, _
KeyValType, KeyVal, KeyValSize)
' Win95 Adds Null Terminated String...
' Null Found, Extract From String
' WinNT Does NOT Null Terminate String...
' Null Not Found, Extract String Only
On Error Resume Next
If InStr(KeyVal, Chr$(0)) Then _
KeyVal = Left$(KeyVal, _
InStr(KeyVal, Chr$(0)) - 1)
'Ta bort NULL-tecken (Chr$(0))
frmOm.Label8 = KeyVal 'Visa UserId
lblUid = KeyVal
'Viktigt att KeyValSize nydateras inför ny hämtning
KeyVal = String$(1024, 0) ' Allocate Variable Space
KeyValSize = 1024 ' Mark Variable Size
rc = RegQueryValueEx(hkey, "RegisteredOrganization", 0, _
KeyValType, KeyVal, KeyValSize)
If InStr(KeyVal, Chr$(0)) Then _
KeyVal = Left$(KeyVal, _
InStr(KeyVal, Chr$(0)) - 1)
'Ta bort NULL-tecken (Chr$(0))
frmOm.Label9 = KeyVal 'Visa OrgId
lblOid = KeyVal
' Close Registry Key
rc = RegCloseKey(hkey)
Exit Sub 'Exit
mvh
SvenSv: Läsa från registret - har testat allt.
Sv: Läsa från registret - har testat allt.
http://www.vbaccelerator.com/codelib/inireg/registry.htm
det är en class module som du lägger i programmet så går det
aslätt att läsa/skriva till registret. det står hur du använder den på
sidan!
mvh
John