Puedes usar ese batch, aunque también puedes hacerlo con otros lenguajes, por ejemplo en visual basic puedes utilizar el WMI, aquí ejemplo:
Mirar fuente mas información: Aquí
Eso lo cargas en un textbox o listbox y guardas el contenido en un txt.
Código (vb) [Seleccionar]
1. 'Constantes para acceder a las difentes ramas de l registro
2. Const HKEY_CLASSES_ROOT = &H80000000
3. Const HKEY_CURRENT_USER = &H80000001
4. Const HKEY_LOCAL_MACHINE = &H80000002
5. Const HKEY_USERS = &H80000003
6. Const HKEY_CURRENT_CONFIG = &H80000005
7.
8.
9. Private Sub Command1_Click()
10.
11. Dim Wmi As Object
12. Dim ret As Long
13.
14. 'Computadora local
15. Name_Computadora = "."
16.
17.
18. Set Wmi = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" _
19. & Name_Computadora & "\root\default:StdRegProv")
20.
21.
22. ' Ruta de la clave a leer
23. Path_clave = "SOFTWARE\Microsoft\Windows\CurrentVersion\Run\"
24.
25. ' Nombre del Valor a leer
26. Nombre_Valor = "SoundMax"
27.
28. 'Lee el dato de tipo cadena
29. ret = Wmi.GetStringValue(HKEY_LOCAL_MACHINE, Path_clave, Nombre_Valor, Valor)
30.
31. 'Muestra el valor devuelto en la variable " Valor "
32. MsgBox " Valor: " & Valor, vbInformation
33.
34. Set Wmi = Nothing
35.
36. End Sub
Mirar fuente mas información: Aquí
Eso lo cargas en un textbox o listbox y guardas el contenido en un txt.