Hey,
Also so kann ich mir zum Beispiel alle Ordner unter LOCAL_MACHINE anzeigen:
Spoiler anzeigen
Das funktioniert auch. Das Problem aber ist, wenn ich z.B. LOCAL_MACHINE aufliste, dauert das 30-40 Sekunden.
Wie kann ich das so umschreiben, das er nicht auf einmal die komplette Registry auslist, sondern immer nur jeweils den geöffneten Knoten?
Und jedes mal wenn ich nen neuen Knoten öffne, die darin enthaltenen Subkeys?
Also so kann ich mir zum Beispiel alle Ordner unter LOCAL_MACHINE anzeigen:
VB.NET-Quellcode
- Imports Microsoft.Win32
- Public Class frm_main
- Private Sub frm_main_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
- End Sub
- Private Function getnodes(ByVal regkey As RegistryKey) As TreeNode
- Dim parts() As String = regkey.Name.Split("\")
- Dim temp As New TreeNode(parts.Last)
- Dim subkey As RegistryKey
- If regkey.SubKeyCount > 0 Then
- For Each keyName As String In regkey.GetSubKeyNames
- Try
- subkey = regkey.OpenSubKey(keyName)
- temp.Nodes.Add(getnodes(subkey))
- Catch ex As Exception
- End Try
- Next
- End If
- Return temp
- End Function
- Private Sub frm_main_Resize(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Resize
- regTree.Height = Me.Height - 60
- End Sub
- Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
- Dim rootnode As TreeNode
- rootnode = getnodes(My.Computer.Registry.LocalMachine)
- regTree.Nodes.Add(rootnode)
- End Sub
- End Class
Das funktioniert auch. Das Problem aber ist, wenn ich z.B. LOCAL_MACHINE aufliste, dauert das 30-40 Sekunden.
Wie kann ich das so umschreiben, das er nicht auf einmal die komplette Registry auslist, sondern immer nur jeweils den geöffneten Knoten?
Und jedes mal wenn ich nen neuen Knoten öffne, die darin enthaltenen Subkeys?
C# Developer
Learning C++
Learning C++