vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevAniGif - als kostenlose Vollversion auf unserer vb@rchiv CD Vol.5  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Re: registry 
Autor: Mr. Fox
Datum: 14.08.03 14:09

Hi!

Hab leider nicht die Zeit, dir ein komplettes Beispiel zu schreiben, aber mit der folgenden Anleitung
sollte es klappen:
Public Function GetValueName(ByVal HKEY As Long, ByVal SubKey As String, ByVal _
  ValueIndex As Long, Optional ByRef Typ As Long, Optional ByRef LastIndex As _
  Long) As String
 
    Dim lpData As Long
    Dim hKeyReturn As Long
    Dim Length As Long
    Dim dummy As Long
    Dim vorstr As String
    Dim ValueLength As Long
 
    Call RegOpenKeyEx(HKEY, SubKey, 0&, KEY_READ, hKeyReturn)
    ValueLength = 255
    vorstr = String(ValueLength, 0)
    Length = ValueLength
    dummy = RegEnumValue(hKeyReturn, ValueIndex, ByVal vorstr, ValueLength, 0&, _
      Typ, ByVal lpData, Length)
    If dummy = ERROR_NO_MORE_ITEMS Then
        GetValueName = ""
        Exit Function
    End If
    GetValueName = ' Chr(0) am Ende entfernen (z.B. Left(vorstr, InStr(vorstr, 
    ' Chr(0) -1)) )
    If GetValueName = "" And dummy = 0 Then
        GetValueName = GetValueName(HKEY, SubKey, ValueIndex + 1)
        LastIndex = ValueIndex + 1
    Else
        LastIndex = ValueIndex
    End If
    Call RegCloseKey(hKeyReturn)
 
End Function
Dabei gilt:
HKEY =
-HKEY_CLASSES_ROOT = &H80000000
-HKEY_CURRENT_USER = &H80000001
-HKEY_LOCAL_MACHINE = &H80000002
-HKEY_USERS = &H80000003
-HKEY_PERFORMANCE_DATA = &H80000004
-HKEY_CURRENT_CONFIG = &H80000005
-HKEY_DYN_DATA = &H80000006

Vewendung:
Dim ValueName As String
Dim LastIndex As Long
 
Do
    ValueName = Trim$(GetValueName(HKEY_CURRENT_USER, "MeinRegKey", LastIndex, _
      , LastIndex))
    LastIndex = LastIndex + 1
    If ValueName = "" Then Exit Do
    'bearbeite ValueName
Loop
Das ganze funktioniert genauso mit RegEnumKeyEx (musst nur ein bisschen abändern). Die API-Deklarationen für
die Reg...-Funktionen musst du dir halt noch aus einem API-Viewer holen.
An der Stelle noch eine kleine Weisheit (weiss aber nicht mehr wer das gesagt hat):
To iterate is human, to recurse divine.

ciao
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
registry437evil_uwe13.08.03 11:31
Re: registry271BKC13.08.03 21:18
Re: registry265evil_uwe14.08.03 07:41
Re: registry276Mr. Fox14.08.03 11:03
Re: registry249evil_uwe14.08.03 13:03
Re: registry299Mr. Fox14.08.03 14:09
Re: registry264evil_uwe14.08.03 14:12

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel