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

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  como hacer un registro remoto
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: como hacer un registro remoto  (Leído 2,247 veces)
rembolso

Desconectado Desconectado

Mensajes: 163



Ver Perfil
como hacer un registro remoto
« en: 25 Mayo 2009, 06:35 am »

hola tengo un problema se hacer un editor de registro igual q al de windows esmas ya lo hice  y mejor ajajj pero el problema es q no tengo idea de como hacer remotamente  . con winsock es a lo q me refiero aplicacion cliente servidor
 :-\


En línea

burbu_1

Desconectado Desconectado

Mensajes: 159


hamen gaoz


Ver Perfil
Re: como hacer un registro remoto
« Respuesta #1 en: 27 Mayo 2009, 01:15 am »

hola,
precisamente yo estoy tratando de hacer algo similar. Si ya tienes el programa hecho no te será muy difícil (lo digo yo que soy un novato  javascript:void(0);).

lo que yo he hecho ha sido utilizar 3 winsock (para las instrucciones, envio de keys y envío de valores)

primero conecto los 3 winsock y la única pega es que el winsock que va a recibir la petición de conexión tiene que tener el index 0, y cuando recibe el connection_request hay que cargar el winsock(1) que será el que funcione.

cuando el winsock de instrucciones del server recibe una orden, por ejemplo "HKLM"
se ejecuta el api        RegOpenKey(HKEY_LOCAL_MACHINE, "", handle_superior)
y seguido un bucle con el api          RegEnumKeyEx(handle_superior, i, key_name, name_size, ByVal 0&, vbNullString, ByVal 0&, ByVal 0&) que mientras sea 0 mandará al cliente,de una en una, los nombres de las keys de HKLM, por el winsock de keys mediante la instrucción     winsock_keys.senddata key_name       y según se reciben se llevan a un listbox

cuando en el server, se reciben datos por el winsock de keys, será la subey que se quiere explorar del handle abierto anterior, se ejecutaría en el server
RegOpenKey(handle_superior, subkey, handle1)    para abrir la nueva subkey
handle_superior = handle1         para la siguiente key que abramos
y de nuevo un bucle con RegEnumKeyEx que se enviaría por winsock_key
y además otro bucle con RegEnumValue que se enviaría por winsock_value y en el cliente se añadiría a otro listbox

para otras instrucciones como borrar claves, crear nuevos valores y demás, habría que o bien meter más winsocks o jugar con las cadenas que se envían, por ejemplo yo envío junto a cada valor su data y su tipo, y después la separo en el cliente.

No sé si te habrá sido de ayuda, leyendo de nuevo el royo que he escrito, la verdad es que ni yo me entero  javascript:void(0);  , pero la idea es enviar desde el cliente una orden al servidor (winsock_cliente.senddata orden), recoger la orden en el servidor (winsock_servidor.getdata orden),analizar la orden en el servidor (if orden=...then), ejecutar la orden, devolver la salida (winsock_servidor.senddata salida) y recogerla en el cliente (winsock_cliente.getdata salida)





En línea

rembolso

Desconectado Desconectado

Mensajes: 163



Ver Perfil
Re: como hacer un registro remoto
« Respuesta #2 en: 27 Mayo 2009, 05:23 am »

yo hice todo eso con un winsock pero cuando quiero obtener todas las ramas del registro y pasarlas a un listviev no me sale
En línea

burbu_1

Desconectado Desconectado

Mensajes: 159


hamen gaoz


Ver Perfil
Re: como hacer un registro remoto
« Respuesta #3 en: 27 Mayo 2009, 17:10 pm »

hola otra vez,
se me ocurre que cuando intentas mandar todas las ramas del registro, una tras otra, el winsock puede saturarse.
Yo uso un procedimiento que encontré por algún foro (creo que hacían un explorador de archivos remoto) del que no recuedo el nombre del autor.


Private Sub pausa()        'por un tema de velocidad ya que nuestro micro
                                     'es màs ràpido que nuestra conexiòn crearemos
    Dim comenzar            'un Procedimiento que hara pausas entre envio y envio,
    Dim controlar             'asi no atora a Winsock
    comenzar = Timer
    Do Until controlar >= comenzar + 0.01
        controlar = Timer
        DoEvents
    Loop

End Sub

Llamando a este procedimiento en el server, tras la instrucción winsock.sendddata (call pausa), a mi me envía correctamente todas las ramas.

Espero que te sirva. Un saludo.

P.D. Repito que el código no es mío, lo encontré por ahí y siento no recordar el nombre del autor para ponerlo.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Como hacer un respaldo en el registro de las carpetas « 1 2 »
Windows
RAUNOS 13 6,668 Último mensaje 9 Octubre 2011, 10:13 am
por Randomize
¿Como hacer un sniff remoto sin cliente VPN con acceso al Gateway?
Redes
imaginawireless 1 2,607 Último mensaje 15 Febrero 2012, 22:48 pm
por imaginawireless
¿como hacer un logueo y registro en batch?
Scripting
xhunik 1 1,924 Último mensaje 22 Agosto 2014, 05:32 am
por engel lex
Como hacer un sistema de localización por registro?
PHP
Antoniio 1 2,203 Último mensaje 19 Julio 2017, 17:38 pm
por LaThortilla (Effort)
Permisos acceso a clave de registro PC remoto « 1 2 »
Scripting
jarpon 10 9,470 Último mensaje 27 Febrero 2022, 17:06 pm
por jarpon
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines