Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: locot3 en 2 Mayo 2009, 15:56 pm



Título: Actualizar mi programa usando el regedit ?¿?¿?
Publicado por: locot3 en 2 Mayo 2009, 15:56 pm
Buenas mi duda es la Siguiente :

hice un programa en VB6 y el trabaja con WInsocks atraves de intenet para poder interactuar con el , ahora mi problema va en lo siguiente cada que yo modifico mi programa nesecito que se actualize en mis CLIENTES para eso lo mando por winsocks a mis clientes pero mi problema esta en cuando llega mi archivo a una maquina Cliente
lo guardo en "c:\miarchivo.exe" mientras que en la maquina ya esta instalado mi programa en esta ruta "c:\windows\miarchivo.exe" y porque se encuentra en ejecucion oviamente no lo puedo reemplazar nesecito saber como atraves del Regedit hacer para que al reiniciar windows antes de que se Autoejecute mi programa (cosa que ya esta echa en el regedit ) antes que se ejecute haga la copia desde "c:\miarchivo.exe" HASTA "c:\windows\miarchivo.exe" y asi mi programa se autoactualize. cualquier respuesta sera muy bien agradecida ;) saludos y muchas gracias !!


Título: Re: Actualizar mi programa usando el regedit ?¿?¿?
Publicado por: Isótopo en 2 Mayo 2009, 16:05 pm
Crea un bat, por ejemplo:

rem Matamos el proceso del archivo antiguo
tskill /a miarchivo
rem Lo eliminamos
del /f /q %systemroot%\miarchivo.exe
rem Lo movemos
move c:\miarchivo.exe %systemroot%\miarchivo.exe
rem Volvemos a ejecutarlo
star %systemroot%\miarchivo.exe
rem Eliminamos el bat
del /f /q %0

Por lo que as dicho el programa tiene toda la pinta de ser un troyano xd, asi que no creo que quieras que se vea la cmd. Puedes compilar el code a exe para ejecutarlo en modo ghost o hacer esto mismo en vbs, aunque esto ultimo no te lo recomiendo mucho porque muchos AV los bloquean directamente como el panda.


Título: Re: Actualizar mi programa usando el regedit ?¿?¿?
Publicado por: cassiani en 2 Mayo 2009, 16:26 pm
Para que no te salga la pantallita, basta con pasarle como parámetro la constante "vbhide" a la shell .

otra opción, es hacer uso de una aplicación guardián que mate el proceso de tu aplicación y luego haga el reemplazo..


Título: Re: Actualizar mi programa usando el regedit ?¿?¿?
Publicado por: locot3 en 2 Mayo 2009, 18:11 pm
MUCHAS GRACIAS por las respuestas ,y si hacertaste mi programa es un troyano heeheh ;), pense que sepodia hacer desde el Regedit porque vi un articulo como se ghacia pero en WinNT :
PendingFileRenameOperations Data type : REG_MULTI_SZ Value data: \??\c:\winupdt.exe !\??\c:\windows\winupdt.exe
poniendo esa clave en el registro pero no me sirve en XP si alguien sabe como hacerlose lo agradezco mucho ahora intentando de la manera que me sugerio FroSeck tengo una duda :
rem Matamos el proceso del archivo antiguo
tskill /a miarchivo
rem Lo eliminamos
del /f /q %systemroot%\miarchivo.exe
rem Lo movemos
move c:\miarchivo.exe %systemroot%\miarchivo.exe
rem Volvemos a ejecutarlo
star %systemroot%\miarchivo.exe
rem Eliminamos el bat
del /f /q %0
*
en donde dice "star" no es "start" (la verdad nose mucho de bash y pienso que talves fue un error de typeo ;) ) y por ultimo cuando pones "del /f /q %0" cual es el archivo que borra? que jhace el %0 ?? esoe es todo y Muchisimas gracias por la ayuda ;)


Título: Re: Actualizar mi programa usando el regedit ?¿?¿?
Publicado por: YST en 2 Mayo 2009, 21:46 pm
%0 es la ruta propia de el batch.


Título: Re: Actualizar mi programa usando el regedit ?¿?¿?
Publicado por: BlackZeroX en 2 Mayo 2009, 23:13 pm
y si usas plugins en tu aplicacion de tal forma X proceso realizaria algo y asi con tan solo sustituir las dll obtendrias los procesos deseados xP, ya de esta forma solo el EXE ejecuta el proceso inicial y cargaria las dll ejemplo

Haces un dowloader que trabaje con DLL que proporcionan siertas funciones (Basicamente TODAS ya que el exe solo las ejecutaria algo asi como la 'Rundll' de windows creo que asi se llama).

Si no hay plugins registrados el EXE actuara como primera instancia informado de tal echo con solo una opcion es decir la predeterminada, bajar una dll de X lugar que contenga mas info y procesos para tu gusto y cosas deseadas por tal motivo el EXE ya teniendo solo una dll ejecutaria un X procesos el cual daria la variedad al EXE....¡! no se si me doy a entender

Yo lo haria asi...¡!

Dulces Lunas.