elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Sistemas Operativos
| |-+  Windows (Moderador: Randomize)
| | |-+  Guardar valor de las claves del Registro en .txt
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Guardar valor de las claves del Registro en .txt  (Leído 6,040 veces)
WaAYa HaCK

Desconectado Desconectado

Mensajes: 292


Arduino, Android and music


Ver Perfil
Guardar valor de las claves del Registro en .txt
« en: 12 Junio 2011, 13:12 pm »

Hola a todos! Básicamente es esto: ¿cómo se puede guardar el contenido o valor de una clave conocida del Registro en un archivo de texto? He leído un post donde Hendrix preguntaba algo parecido, pero no me vale.

Si tuviéramos una clave en el Registro:
HKCU\Control Panel\Desktop\ConvertedWallpaper

cuyo valor fuera:
C:\Wallpapers\mi_fondo.bmp

Qué forma hay para que en un archivo de texto aparezca
Código:
El valor de la clave "HKCU\Control Panel\Desktop\ConvertedWallpaper" es "C:\Wallpapers\mi_fondo.bmp"
??


¿Se puede hacer con un .bat? ¿Un VBScript? ¿En Python?
Gracias!

Waaya


En línea

La cacatúa yoyó es nueva en el zoo!
SuperDraco


Desconectado Desconectado

Mensajes: 2.505


Crew Dragon


Ver Perfil
Re: Guardar valor de las claves del Registro en .txt
« Respuesta #1 en: 12 Junio 2011, 13:53 pm »

para empezar puedes exportar la clave manualmente, y se guarda en .REG... pero supongo que eso ya lo sabes.

Para hacer más o menos lo que dices, pues con este batch mismo que te acabo de hacer:


Código
  1. @echo off
  2. setlocal enabledelayedexpansion
  3.  
  4. For /F "tokens=1,2,3*" %%a in ('reg query "HKCU\control panel\desktop" /v "Wallpaper"') do (
  5. Set clave=%%a
  6. set Tipo=%%b
  7. Set valor=%%c
  8. )
  9.  
  10. echo El valor de la clave "!clave!" de tipo "!tipo!" es "!valor!" >> clave.txt
  11. notepad clave.txt
  12. pause>nul




Otra forma de hacerlo sería exportando la clave... pero no lo aconsejo ya que las claves se importan con caracteres dobles y podria crear confusion.

Código
  1. @echo off
  2. set Clave=HKCU\control panel\desktop
  3.  
  4. reg export "%clave%" clave.reg /y >nul
  5. For /F "tokens=1,2* delims==" %%a in ('type clave.reg ^| findstr /r ^\""Wallpaper""=') do (
  6. echo El valor de la clave "%clave%" %%a es %%b
  7. del /Q clave.reg
  8. )
  9.  
  10. pause>nul


Resultado:
Código:
El valor de la clave "HKCU\control panel\desktop" "Wallpaper" es "C:\\Users\\Administrador\\AppData\\Roaming\\Microsoft\\Windows\\Themes\\TranscodedWallpaper.jpg"

Como ves las barras son dobles. se puede arreglar en el for, pero no merece la pena ya que hay muchos más caracteres que aparecen dobles al exportar, así que te recomiendo unicamente la primera opción.


« Última modificación: 12 Junio 2011, 14:26 pm por pitoloko » En línea

No he vuelto, solo estoy de paso.
skapunky
Electronik Engineer &
Colaborador
***
Desconectado Desconectado

Mensajes: 3.667


www.killtrojan.net


Ver Perfil WWW
Re: Guardar valor de las claves del Registro en .txt
« Respuesta #2 en: 12 Junio 2011, 14:05 pm »

Puedes usar ese batch, aunque también puedes hacerlo con otros lenguajes, por ejemplo en visual basic puedes utilizar el WMI, aquí ejemplo:

Código
  1.   1. 'Constantes para acceder a las difentes ramas de l registro  
  2.   2. Const HKEY_CLASSES_ROOT = &H80000000  
  3.   3. Const HKEY_CURRENT_USER = &H80000001  
  4.   4. Const HKEY_LOCAL_MACHINE = &H80000002  
  5.   5. Const HKEY_USERS = &H80000003  
  6.   6. Const HKEY_CURRENT_CONFIG = &H80000005  
  7.   7.  
  8.   8.  
  9.   9. Private Sub Command1_Click()  
  10.  10.  
  11.  11.     Dim Wmi As Object  
  12.  12.     Dim ret As Long  
  13.  13.  
  14.  14.     'Computadora local  
  15.  15.     Name_Computadora = "."  
  16.  16.      
  17.  17.      
  18.  18.     Set Wmi = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" _  
  19.  19.                         & Name_Computadora & "\root\default:StdRegProv")  
  20.  20.  
  21.  21.      
  22.  22.     ' Ruta de la clave a leer  
  23.  23.     Path_clave = "SOFTWARE\Microsoft\Windows\CurrentVersion\Run\"  
  24.  24.      
  25.  25.     ' Nombre del Valor a leer  
  26.  26.     Nombre_Valor = "SoundMax"  
  27.  27.      
  28.  28.     'Lee el dato de tipo cadena  
  29.  29.     ret = Wmi.GetStringValue(HKEY_LOCAL_MACHINE, Path_clave, Nombre_Valor, Valor)  
  30.  30.      
  31.  31.     'Muestra el valor devuelto en la variable " Valor "  
  32.  32.     MsgBox " Valor: " & Valor, vbInformation  
  33.  33.    
  34.  34.     Set Wmi = Nothing  
  35.  35.  
  36.  36. End Sub  

Mirar fuente mas información: Aquí

Eso lo cargas en un textbox o listbox y guardas el contenido en un txt.
En línea

Killtrojan Syslog v1.44: ENTRAR
WaAYa HaCK

Desconectado Desconectado

Mensajes: 292


Arduino, Android and music


Ver Perfil
Re: Guardar valor de las claves del Registro en .txt
« Respuesta #3 en: 12 Junio 2011, 14:43 pm »

pitoloko, la verdad es que había usado reg export, pero no había pensado de hacerlo con reg query. Tu batch me va perfecto.

Skapunky, una pregunta: ¿cómo puedo cargar en un textbox el valor y guardarlo en un txt?  :-[ es que no sé una ***** de VB  :(

De todos modos, ¡gracias a los dos!
Waaya
En línea

La cacatúa yoyó es nueva en el zoo!
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Bath - Guardar en una variable un valor de una clave de registro « 1 2 »
Scripting
nhaalclkiemr 13 8,916 Último mensaje 10 Abril 2007, 20:40 pm
por sirdarckcat
Ver si existe un valor en el registro (if)
Programación Visual Basic
‭lipman 3 3,749 Último mensaje 22 Junio 2007, 18:19 pm
por ‭lipman
Guardar un valor en el inicio de windows
Programación Visual Basic
Zeroql 9 3,397 Último mensaje 25 Junio 2008, 01:12 am
por Zeroql
Guardar valor textbox en variable
Java
Debci 3 24,299 Último mensaje 17 Marzo 2009, 18:31 pm
por Debci
Guardar valor de variables de .java en save.xml
Java
VicInFlames 2 3,188 Último mensaje 15 Noviembre 2015, 18:57 pm
por VicInFlames
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines