Strona: [  << <   1   > >>  ]  z  1     
Autor Temat: Zaawansowany dostęp do rejestru...
Viper87



Typ: neutral
Postów: 490
Zarejestrowany: Oct 2002
Zaawansowany dostęp do rejestru...

Czy ktoś mógłby mi pomóc i napisać procedurę (trzeba pewnie będzie użyć API), która:
a.)odczytałaby nazwy wszystkich podkluczy w "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions
b.)odczytałaby nazwy wszytskich wartości w "HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Extensions\CmdMapping

Byłbym wdzięczny chcociaż za jakąś wskazówkę.

P.S Czy może ma ktoś biblitekę Regobj.dll?


_____________________________________________
Viper

"Savoir c`est prevoir, prevoir c`est prevenir". 
(Wiedzieć to przewidzieć, przewidzieć to zapobiegać) 


17-06-2003 12:52
Pokaż profil Viper87  Wyślij email do Viper87   Odwiedź stronę Viper87  
m-a-x



Typ: neutral
Postów: 366
Zarejestrowany: Jan 2003

Na vb4all masz sampel a właściwie całą klase do obsługi rejestru. Są w niej właśnie funkcje do listowania podkluczy. Jednakże o ile dobrze pamiętam nie ma tam funkcji zapisu różnego typu wartości (dword,binary,string). Jak byś chciał też te funkcje napisz a je tutaj zamieszcze (nie zrobiłem tego odrazu bo o to nie prosiłeś ).

http://www.coderscity.pl/no-vb4all/workshop/registry%20class.zip


_____________________________________________

Problemem zazwyczaj nie jest brak osób znających odpowiedź a zadanie właściwego pytania!

18-06-2003 09:40
Pokaż profil m-a-x  Wyślij email do m-a-x   
Viper87



Typ: neutral
Postów: 490
Zarejestrowany: Oct 2002
Dzięki...

Ta klasa jest trochę skomplikowana, ale mam nadzieję, że sobie poradzę . Natomiast co do zapisu tych wartości, co mówiłeś, to bardzo bym Cię prosił o ich zamieszczenie.


_____________________________________________
Viper

"Savoir c`est prevoir, prevoir c`est prevenir". 
(Wiedzieć to przewidzieć, przewidzieć to zapobiegać) 


18-06-2003 14:06
Pokaż profil Viper87  Wyślij email do Viper87   Odwiedź stronę Viper87  
m-a-x



Typ: neutral
Postów: 366
Zarejestrowany: Jan 2003

Dobra przyznam szczerze że nie chciało mi sie zabardzo samemu czegoś tworzyć (szukać) wiec przekopiowałem wiekszą część z ApiGuide (jeszcze kiedyś dodam coś o zapisywaniu wartości dword):

Const REG_SZ = 1 ' Unicode nul terminated string
Const REG_BINARY = 3 ' Free form binary
Const HKEY_CURRENT_USER = &H80000001
Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long
Private Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Private Declare Function RegDeleteValue Lib "advapi32.dll" Alias "RegDeleteValueA" (ByVal hKey As Long, ByVal lpValueName As String) As Long
Private Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Private Declare Function RegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, lpType As Long, lpData As Any, lpcbData As Long) As Long
Private Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As Long

Sub SaveString(hKey As Long, strPath As String, strValue As String, strData As String)
    Dim Ret
    'Create a new key
    RegCreateKey hKey, strPath, Ret
    'Save a string to the key
    RegSetValueEx Ret, strValue, 0, REG_SZ, ByVal strData, Len(strData)
    'close the key
    RegCloseKey Ret
End Sub
Sub SaveStringLong(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_BINARY, CByte(strData), 4
    'close the key
    RegCloseKey Ret
End Sub
Sub DelSetting(hKey As Long, strPath As String, strValue As String)
    Dim Ret
    'Create a new key
    RegCreateKey hKey, strPath, Ret
    'Delete the key's value
    RegDeleteValue Ret, strValue
    'close the key
    RegCloseKey Ret
End Sub
'plus
'nadawanie wartości (domyślnej) dla danego folderu (klucza)
lRet = RegSetValueEx(hTemp, "", 0&, REG_SZ, ByVal "tekst", Len("tekst" ))
'oczywiście hTemp to jest wartość Long danego klucza


_____________________________________________

Problemem zazwyczaj nie jest brak osób znających odpowiedź a zadanie właściwego pytania!

19-06-2003 19:08
Pokaż profil m-a-x  Wyślij email do m-a-x   
Wszystkich odpowiedzi: 3 :: Maxymalnie na stronę: 20
Strona: [  << <   1   > >>  ]  z  1