PDA

Ver la Versión Completa : Como crear un ejecutable hijo desde mi ejecutable?


K04VH4CK
13-08-2015, 04:34:51
Miren, pues la verda ya vi ke muchos otros miembros de aqui ya preguntaron lo mismo sin obtener respuestas certeras...

Aver si logro expresarme bien y recibir una respuesta certera :-)

Estoy desarrollando una aplicacion tipo RAT.... que como ustedes saben, tiene la opcion de crear un server, osea, crearlo, editarlo, configurarlo, modificarlo, desde el cliente mismo... yo intente con un metodo infructuoso...

Procedure TMainFRM.Button1Click (Sender: TObject);
Var
NW: TApplication;
Begin
NW := TApplication.Create (self);
NW.Title......

Asi... nose si va asi el codigo, lo hice a memoria...
Y pues, al correrlo, y clickear en button, no crea ningun ejecutable desde el mio... y buscaaaando por google y foros, en ninguno me dan la respuesta que espero, en el server (ejecutable hijo) tiene que tener las instrucciones que el cliente (ejecutable padre) le vaya dando, como ruta IP/DNS, nombre de server, opciones de alerta, como dije a un principio, como un rat (seria bueno citar a Darkcomet RAT, que fue escrito en delphi)...
Confiando en su comprencion, espero me ayuden a mi y a los demas "compañeros" que tengan el mismo problema...

Posdata: Tengo delphi 7, RAD delphi 2010, turbo pascal, turbo asm, C, C++, C#, Java, VB6, python, ruby... por si necesito un compilador externo para el server (si es que los necesito =))...

AgustinOrtu
13-08-2015, 08:08:53
Que es lo que necesitas exactamente? Comunicacion mediante sockets? Debes desarrollar dos programas distintos (dos exes distintos vamos) uno es el servidor y el otro el cliente.

Busca informacion sobre TServerSocket y TClientSocket
Algunos link de interes (busque bastante rapido pero es un comienzo):

DocWiki (http://docwiki.embarcadero.com/CodeExamples/XE8/en/Chat_Room_Socket_(Delphi))
HackerDude (http://www.hackerdude.com/courses/delphi/Cap010.2.html)
Delphi Sources (http://www.delphisources.ru/pages/faq/master-delphi-7/content/LiB0189.html)
YouTube (https://www.youtube.com/watch?v=1wMlh7aG9RI)
Zarko Gajic (http://delphi.about.com/od/networking/l/aa112602a.htm)

En el blog de Seoane hay un ejemplo de servidor UDP (tal vez te sirva)
Blog de Seoane (http://delphi.jmrds.com/?q=node/76)

O la otra opcion es utilizar componentes Indy:
Delphi al Limite (http://delphiallimite.blogspot.com.ar/2008/09/enviar-mensajes-entre-aplicaciones-con_26.html)

..tambien la libreria Synapse
Delphi al Limite - Synapse I (http://delphiallimite.blogspot.com.ar/2010/03/la-libreria-synapse-1.html)

TApplication no sirve para crear "otra aplicacion hija" desde la que estas desarrollando, deberias leer la documentacion oficial para despejar dudas: DocWiki TApplication (http://docwiki.embarcadero.com/Libraries/XE8/en/Vcl.Forms.TApplication)

PD: Por cierto, crear un ejecutable hijo y que haga todo lo que el padre le diga? suena justo como lo que ando buscando para no tener que trabajar mas y que se hagan solos los programas :D

Casimiro Notevi
13-08-2015, 09:27:39
...
Recuerda poner los tags al código fuente, ejemplo:

http://www.clubdelphi.com/images/UtilizarTAGs.png

Gracias :)

escafandra
13-08-2015, 10:57:06
Como te indican, un ejecutable en delphi no puede escribir otro a no ser que te crees un lenguaje y su compilador. Pero si puede ejecutar otro.

Se me ocurren muchas soluciones a tu pregunta. Todas pasan por escribir un archivo de confoguración par tu programa "hijo" o pasando parámetros al ejecutarlo.

Puedes escribir una app que sea cliente y servidor y que según la configuración cambie su compirtamiento. También puedes escribir ambos por separado y que tu configures lo que hará el hijo, en un archivo ini, por ejemplo. También podrías portar el hijo dentro de los recursos del padre.


Saludos.

gatosoft
13-08-2015, 15:52:25
Miren, pues la verda ya vi ke muchos otros miembros de aqui ya preguntaron lo mismo sin obtener respuestas certeras...

Aver si logro expresarme bien y recibir una respuesta certera :-)

Estoy desarrollando una aplicacion tipo RAT.... que como ustedes saben, tiene la opcion de crear un server, osea, crearlo, editarlo, configurarlo, modificarlo, desde el cliente mismo... yo intente con un metodo infructuoso...
..

Como te han dicho requieres de un compilador para generar un ejecutable... es muy "creativo" pensar que instanciar un objeto de TApplication te genera automáticamente un ejecutable.

Delphi tiene su compilador de linea de comandos (dcc32), que puedes invocar asi:

C:\>dcc32 NombreDePrograma.pas

Pero sobra decir que para utilizarlo como quieres, debes generar primero tu codigo pascal para luego compilarlo.

No imagino cual podría ser tu idea de sistema, pero creo que podrias pensar en otro tipo de solución. Por ejemplo: crear un framework que mediante parametros o reglas ingresadas desde el cliente se obtenga el resultado que quieres.

Saludo,

K04VH4CK
14-08-2015, 02:42:47
Muchas gracias por sus respuestas....
Eeeem, disculpa "gatosoft", podria explicarme un poco mas, como usar el compilador dcc32, osea, que parametros usar para pasar de un archivo .pas a un .exe
Porfavor...

ecfisa
14-08-2015, 07:17:45
Hola K04VH4CK.


DCC32.EXE, the Delphi Command Line Compiler (http://docs.embarcadero.com/products/rad_studio/delphiAndcpp2009/HelpUpdate2/EN/html/devwin32/dcc32_xml.html)


Saludos :)

BDWONG
14-08-2015, 08:02:23
Hola forma mas comun que he visto que los rat generan el server es a traves de tener guardado el server dentro del rat como archivos de recurso.

No se si es lo mas optimo pero es lo mas comun tanto rat como coolvibes o spynet funcionan asi, te aconsejo darle un revisada algun source de un rat ya hecho para que lo compruebes hay muchos con el codigo fuente ya liberado, si no encuentras uno enviame un mp y te paso el link

Saludos...