Originariamente inviato da oregon
Usa la For Each

Usa MSDN e gli esempi

http://msdn.microsoft.com/en-us/libr...bkeynames.aspx
Sono riuscito a fare tutto e funziona alla perfezione

Metto tutte le chiavi del registro in un array:
codice:
Dim RegPercorsi As RegistryKey()
        RegPercorsi = New RegistryKey(3) {
My.Computer.Registry.LocalMachine.OpenSubKey("Software\1"),
                        My.Computer.Registry.LocalMachine.OpenSubKey("Software\2"),
                        My.Computer.Registry.LocalMachine.OpenSubKey("Software\3")}
Tramite For Each controllo il tutto e stampo ciò che mi serve:
codice:
For Each chiavi As RegistryKey In RegPercorsi
     For Each valueName As String In chiavi.GetValueNames()
          'fai quel che devi
     next
next
Grazie mille!


PS: Mi è successa una cosa strana...
Io uso CCleaner per sistemare i file in avvio (al posto di MsConfig) ma alla fine è uguale in quanto ho lo stesso risultato con entrambi i programmi.. arrivo al sodo:

Sia Msconfig, sia CCleaner mi vedono in:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Curr entVersion\Run
Quasi 10 programmi...
Se però vado a quel percorso da RegEdit ne vedo solo 1
Perchè tutto ciò??

So che qualcuno penserà che non c'entra con il thread però le chiavi che vado a leggere sono appunto queste quindi anche il programma che ho fatto non mi vede il resto dei programma in avvio ma solo quello che vedo tramite regedit