Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 14 odgovora
  • 3.817 pregleda

Najnovija ↓

Registry pitanje (pristup odredjenim podacima) 31.05.2004. u 19:24 · pre 272 meseca #1
Jedno malo registry pitanje...

Kako mogu da citam i unosim vrednosti u neki kljuc u registry-ju iz VB-a?
U API-Guid-u sam pronasao nacin za snimanje(citanje) npr u kljuc:

HKEY_LOCAL_USER\Neki podkljuc (samo jedan podkljuc!)

i onda citam/brisem/unosim neku vrednost u tom podkljucu. E sad mene interesuje kako da dodjem do neke vrednosti koja se nalazi npr u:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer

podkljucu?????

Molim sve koji znaju da mi pomognu!

Pozdrav svima!
Potpis
rafforum.rs - Forum Računarskog Fakulteta
Re: Registry pitanje (pristup odredjenim podacima) 31.05.2004. u 19:41 · pre 272 meseca #2
Code:

Ret = GetString(HKEY_CURRENT_USER, "Software\Microsoft\Windows\CurrentVersion\Policies\Explorer", ImeKljuca)


Ovako nesto bi trebalo da radi. Medjutim, pre toga moras u funkciji RegQueryStringValue da obradis ostale tipove podataka, posto ona obradjuje samo REG_SZ i REG_BINARY, a ove vrednosti su REG_DWORD.
Potpis
Blue Man Group
Re: Registry pitanje (pristup odredjenim podacima) 03.06.2004. u 11:45 · pre 272 meseca #4
DWORD ti je 2x2 bajta = Long u VBu. Znaci, ovako nesto bi trebalo da radi.

Code:

        ElseIf lValueType = REG_DWORD Then
            Dim strData As Long
            'retrieve the key's value
            lResult = RegQueryValueEx(hKey, strValueName, 0, 0, strData, lDataBufSize)
            If lResult = 0 Then
                RegQueryStringValue = strData
            End If
        End If
Potpis
Blue Man Group
Re: Registry pitanje (pristup odredjenim podacima) 03.06.2004. u 12:43 · pre 272 meseca #5
Hvala. Trenutno sam u internet klubu pa ne mogu da isprobam to ali siguran sam da radi. samo imam jedno pitanje
jell citam isto sa
Code:
Ret = GetString  (....)

il nesto drugo?
Izvini na mojim glupim pitanjima ali sam zestoki pocetnik...
Potpis
rafforum.rs - Forum Računarskog Fakulteta
Re: Registry pitanje (pristup odredjenim podacima) 03.06.2004. u 13:27 · pre 272 meseca #6
Citas sa

Code:

Ret = GetString(HKEY_CURRENT_USER, "Software\Microsoft\Windows\CurrentVersion\Policies\Explorer", ImeKljuca)


a ovaj ElseIf dodaj u RegQueryStringValue funkciji.
Potpis
Blue Man Group
Re: Registry pitanje (pristup odredjenim podacima) 04.06.2004. u 07:49 · pre 272 meseca #7
Hvala. Mogu da citam DWORD al kako da ga snimam?
Pokusao sam sa:
Code:
 SaveString HKEY_CURRENT_USER, _
"Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" _
"NoScrSavPage", "1"

i sa:
Code:

Dim Value as Long
Value = 1
SaveStringLong _
HKEY_CURRENT_USER, _
"Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" _
"NoScrSavPage", CByte(Value)

U prvom slucaju mi cuva String vrednost a u drugom Binary. Sta da radim?
Takodje sam u global declarations stavio prvo:
Code:

Const REG_DWORD = 2

pa nije radilo a posle sam stavio:
Code:

Const REG_DWORD = 4

Al opet nista...
Potpis
rafforum.rs - Forum Računarskog Fakulteta
Re: Registry pitanje (pristup odredjenim podacima) 04.06.2004. u 15:23 · pre 272 meseca #10
Otprilike ovako nesto

Code:

Sub SaveNumberLong(hKey As Long, strPath As String, strValue As String, strData As String)
    Dim Ret
    'Create a new key
    RegCreateKey hKey, strPath, Ret
    'Set the key's value
    RegSetValueEx Ret, strValue, 0, REG_DWORD, CLng(strData), 4
    'close the key
    RegCloseKey Ret
End Sub
Potpis
Blue Man Group
Re: Registry pitanje (pristup odredjenim podacima) 05.06.2004. u 15:25 · pre 272 meseca #11
Ne...ne radi ):
Cuva mi string vrednost.
Ja sam sam pokusao nesto. Mislio sam da iz programa napisem neki .reg fajl i da ga potom pozovem shell funkcijom, al imam jedam problem: Windows me pita da li sam siguran da hocu da ubacim nekoime.reg u registry.
Kako da izbegnem to potvrdjivanje. Hocu reci gde da ubacim "/s" parametar. Evo sta sam ja uradio:
Prvo sam u global declarations upisao:
Code:

Private Declare Function ShellExecute Lib "SHELL32.DLL" Alias "ShellExecuteA"(ByVal hwnd As Long, _
ByVal lpOperation As String, ByVal lpFile As String, _
ByVal lpParameters As String, ByVal lpDirectory As String, _
ByVal nShowCmd As Long) As Long

Private Const SW_ShowNormal = 1

zatim i funkciju:
Code:

Function InputReg(filename As String)
    If Dir(filename) = "" Then
        MsgBox "Unknown error!", vbCritical, "Error": Exit Function
    Else
        Dim iReturn As Long
        iReturn = ShellExecute(frmMain.hwnd, "Open", filename, vbNullString, App.Path, SW_ShowNormal)
    End If
End Function 

Ako mozes pomogni mi sa ovim ili sa onom SaveNumberLong funkcijom...
Potpis
rafforum.rs - Forum Računarskog Fakulteta
Re: Registry pitanje (pristup odredjenim podacima) 06.06.2004. u 01:33 · pre 272 meseca #12
Izvini, radi (SaveNumberLong), nisam primetio da sam ostavio REG_DWORD = 2 umesto 4! Moja greska.
Nema potrebe da sada petljam sa onim .reg fajlovima. Hvala jos jednom, sad znam da citam i unosim sve vrednosti u registriju...
:)
Necu zaboraviti da tvoje ime stavim u Readme.txt (kad zavrsim program za koji mi je ovo trebalo)!
Potpis
rafforum.rs - Forum Računarskog Fakulteta
Re: Registry pitanje (pristup odredjenim podacima) 06.06.2004. u 20:57 · pre 272 meseca #13
Izgleda da sam se rano pohvalio. Ipak imam jos problema, sad me muci binary vrednost. Nisam je dosad unosio u registry pa nisam ni obracao paznju. Evo sta mi treba:
Hocu da unesem:
Code:

VirtualHDIRQ = 01 00 00 00

al kada u VB-u stavim:
Code:

SaveStringLong HKEY_LOCAL_MACHINE, "System\CurrentControlSet\Control\FileSystem", _
"VirtualHDIRQ", "1"

kao vrednost mi upisuje:
Code:

VirtualHDIRQ = 01 00 30 00

Sta da radim? Takodje mi treba kako da unesem:
Code:

00 00 00 00 00 00 00 00 03 00 00 00 00 00 5B E0 00 00 5C E0 00 00 00 00

Ovo nisam ni pokusavao jer nisam mogao ni ono prvo da provalim. Molim te pomogni mi jos sa ovim.
Potpis
rafforum.rs - Forum Računarskog Fakulteta
Re: Registry pitanje (pristup odredjenim podacima) 07.06.2004. u 11:17 · pre 272 meseca #14
Probaj da izmenis SaveStringLong da radi ovako

Code:

RegSetValueEx(ret, strValue, 0, REG_BINARY, strData, Len(strData))


P.S.
Nadam se da znas sta radis. Prckanje po registryju nije preporucljivo ako ne znas sta radis. Zbog toga VB ima built-in funkcije za rad sa regystryjem koje mogu da pisu samo u odredjenom delu regystyja (DeleteSetting, SaveSetting, GetSetting). APIje koristis samo ako znas sta radis.
Potpis
Blue Man Group
Re: Registry pitanje (pristup odredjenim podacima) 08.06.2004. u 10:33 · pre 272 meseca #15
Hvala.
I ne brini znam sta radim (bar tako mislim). Pravim neki program na foru X-Setup-a i TweakManagera pa mi zato treba ovo za registry. Sve sam dosad isprobao na mom kompu (samo ono sto je za 98) i radi bez problema...
Potpis
rafforum.rs - Forum Računarskog Fakulteta
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme