Duda y Problema con Archivos!!

Iniciado por Freeze., 15 Agosto 2007, 00:20 AM

0 Miembros y 1 Visitante están viendo este tema.

Freeze.

Hola esto es algo que nunca he entendido. y que creo que no podre explicar muy bien.. pero ahi voy a ver que tal :xD :

He visto programas que encryptan... y yo quisiera hacer el mio :P :P :P...

Pero lo que no entiendo es como modificar un exe desde vb para que se ejecuta a si mismo, para que mate procesos en fin para que tenga ciertas funciones...

Porque si abro un archivo.exe y coloco esto:

Código (vb) [Seleccionar]

Private sub Form_Load()
MsgBox "hola"
End Sub


Obviamente no lo va a ejecutar...

Tambien seria otra pregunta como se "traduce" (por decirlo de alguna manera) de VB a Exe o ejecutable (el llamado proceso de compilar)....

Salu2..!!

APOKLIPTICO

Podrías por favor explicarte un poco mejor? Que es lo que intentas hacer?

En cuanto al proceso de compilado, lo que hace el Visual Basic, es pasar todas las instrucciones a ASM y despues compila el archivo ejecutable (Aunque creo que antes lo linkea, en Wikipedia está mejor explicado).
AMD Phenom II 1075T X6 @ 290 Mhz x 11 (HT 2036 Mhz NB Link 2616 Mhz) 1.23 Vcore
ASUS M4A89GTD-PRO/USB3
2x2gb G-Skill RipjawsX DDR3 1600 Mhz CL7 (7-8-7-24-25-1T)
Seagate 500 Gb
XFX HD4850 512Mb GDDR3. 650 Mhz/995 Mhz 1.1 Tflops.

Freeze.

Me explico mejor:

Si yo abro el archivo de forma binaria y le introduzco el codigo de un msgbox en vb al crearlo y ejecutarlo no lo hace... simplemente sale la linea de comandos y un error...

Ferсhu

para hacer eso tienes q insertar opcodes, pero no puedes por q siguen un cierto "camino", es lo mismo q abras una foto y le escribas "negro" no se va a pintar de negro, los codigos cuando se compilan a exe's se traducen a codigo makina q es lo q interpreta el SO.

ahora si vos keres menter codigo tuyo en un programa podes injetcar una dll, creo q es lo mas ""facil"" igual no entiendo muy bien a q te referis especificamente

~~

Si, inyectyar una dll es lo mas facil, aunke tb puedes hacer q en vez de ejecutarse LoadLibraryA en la inyeccion se ejecuta MessageBoxA y te ahorras el crear la dll ;)

Freeze.

Un ejemplo:

Yo hago un programa que genere programas que tiren mensajes de error...

¿Que hacer?

Deberia crear una dll?

Como debo meter los datos?

En fin como lo hago?

Disculpen las molestias,..

Gracias.

Freeze.

Me explico mejor :xD :

Cree un "programa" con este codigo:
Código (vb) [Seleccionar]

Private Sub Form_Load()
MsgBox "hola"
End Sub


Y otro con este:
Código (vb) [Seleccionar]

Private Sub Form_Load()
Open "C:\project1.exe" For Binary As #1
code = Input$(LOF(1), #1)
Close #1
Open "C:\lol.exe" For Binary As #1
Put #1, , code
Close #1
End Sub


Y eso me crea "otro programa" pero... al momento de yo ejecutarlo deberia tirar un msgbox (segun lo que yo quiero hacer) pero no lo hace... Sale la linea de comandos y se vuelve a cerrar...

como hago para que en vez de la linea de comandos me salga el programa...

Freeze.

Oigan ya esta listo ya lo pude hacer... :xD

Asi es:

Primero se crea un archivo cualquiera con el codigo:
Código (vb) [Seleccionar]

Private Sub Form_Load()
MsgBox "Este es un mensaje loko"
Unload Me
End Sub


Luego se crea un "programa" con el siguiente codigo:
Código (vb) [Seleccionar]

Private Sub Form_Load()
Open "C:\project1.exe" For Binary As #1
code = Input(LOF(1), #1)
Text1.Text = code
Close #1
Open "C:\lol.exe" For Output As #1
Print #1, code
Close #1
End Sub


Y entonces se ejecuta y queda asi:



Salu2..!! a todos...

Ferсhu

sino me equivoco lo q hiciste es solo leer todo el codigo, de un exe y sobrescribir otro exe. Eso si se puede pero no se pude poner solo codigo, o pedazos, vos metiste el codigo entero. Desde la parte q reseva memoria en el SO hasta donde carga las librerias todo todo jeje.

En pocas palabras creo q es como copiar y reemplazar  :D

Freeze.

Copie todo de un archivo o dll y no lo sobrescribi, solamente lo cree.

Salu2..!!