[VB6] ¿Cómo uso mZombieInvoke?

Iniciado por STARZ, 24 Enero 2012, 01:52 AM

0 Miembros y 5 Visitantes están viendo este tema.

STARZ

#10
Si, el problema estaba en el UPX. El code que pusiste anda perfecto.
Ya aprendí: probar con cal.exe notepad.exe
Ultima pregunta: ¿cómo inferiste que esa API era de SHELL32 y no a KERNEL32?; si yo agarro otra api, ¿como me doy cuenta cual dll que pide?

Código (vb) [Seleccionar]

Invoke "SHELL32", "ShellExecuteW", 0, StrPtr("Open"), StrPtr(App.Path & "\programa.exe"), StrPtr("-c -d"), 0, 0 '-c y -d son atributos


Edit: acabo de ver tu edit, gracias por el ejemplo ansi, aunque no me gusta eso de andar convirtiendo a bytes.

x64core

en la MSDN dice:
http://msdn.microsoft.com/en-us/library/windows/desktop/bb762153(v=vs.85).aspx

O sino podes bajar un programa que se llama api guide, ahí se aprende mucho

STARZ

Muchas gracias RHL por ayudarme y enseñarma, estoy practicando con muchas APIS y me va de lujo.  :)  ;-)

BlackZeroX

.
Revisa la MSDN para saber que el nombre de la libreria adecuando a tratar en la llamada.

* No te recomiendo usar strptr("algo"), ya que es una mala practica en todo sentido.

Dulces Lunas
The Dark Shadow is my passion.

Karcrack

@BlackZeroX: Lo dices por que la cadena se crea al vuelo para la llamada y puede que ese puntero más tarde no exista?

BlackZeroX

Cita de: Karcrack en 24 Enero 2012, 19:01 PM
@BlackZeroX: Lo dices por que la cadena se crea al vuelo para la llamada y puede que ese puntero más tarde no exista?

Eso solo ocurre cuando se implementan hilos y las variables son locales del proceso, es decir se auto destruyen al termino de la función, y si hay un hilo que use ese puntero puede terminarfatal... Mi comentario es solo para tener en cuenta este punto de vista (No afecta en vb6 pero hay que tenelo muy en cuenta).

---->

Al llamar una api como sabras el proceso sede a la llamada api o función X y espera a que termine no obstante en una creación de hilo hijo y se ocuta esto puede ocasiones lecturas a memoria ya ineccistente (no asignada) debido a que la funcion que creo el hilo a terminado y con el TODAS las variales automaticas.

Conclusión: solo es una recomendación, no afecta demasiado a vb6, pero si a otros lenguajes...

Dulces Lunas!¡.
The Dark Shadow is my passion.