Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Md5 Exporter

Iniciado por BeRSeRKeR, 23 de Agosto de 2004, 04:01:10 AM

« anterior - próximo »

BeRSeRKeR

 Pregunta. ¿Se puede lanzar un ejecutable desde memoria sin tener que volcarlo a disco y ejecutarlo desde ahí?. Es que quiero meter un programilla de consola dentro de uno de windows (como recurso) para tenerlo todo en un sólo archivo.

Saludos.
¡Si te buscan en nombre de la ley, huye en nombre de la libertad!!

BeRSeRKeR

 Bueno pues al final lo que he hecho ha sido meter el programa de consola dentro del ejecutable y después, cuando va a utilizarlo lo crea y cuando termina con él, lo destruye.

De todas formas, sigo con la curiosidad de saber si se puede lanzar un ejecutable desde memoria. :)

Ahora el programita en cuestión funciona de forma visual. Es muy sencillo de manejar. Lo único que hay que hacer es arrastar con el botón izquierdo del ratón; y sin soltarlo, el icono de la ventana con el punto de mira en el centro (mirad la imagen). Cuando hayamos apuntado con el cursor sobre la ventana deseada, soltamos el botón izquierdo.



Hecho esto tendremos a nuestra disposición diversos datos de la ventana seleccionada (handle, class y caption). Lo que nos interesa a nosotros es el caption.

Ojo, si por ejemplo queréis recoger el texto que hay en el notepad (por poner un ejemplo en el que su uso sea legal :)), la ventana que tenéis que seleccionar no es la principal sino que hay que seleccionar lo que contiene el texto (la zona blanca). De lo contrario, lo único que estaréis haciendo es recoger el texto que ponga en la barra de título del notepad.

Hay aplicaciones (como por ejemplo gmax) que por el motivo que sea (el de gmax es por joder :lol:), aun diciéndote que el texto que contiene la ventana tiene una longitud de pongamos 20.000 caracteres, el texto que realmente te devuelve está vacío.

Evidentemente esto es una contradicción y así lo hace saber este programilla ("Sizes didn't match. Try this ->" en el campo "Caption"). En este caso, para poder ver todo el texto, hay que hacer click sobre el icono del disquete. Hecho esto nos aparecerá el cuadro de diálogo de guardar en el que deberemos especificar el lugar y el nombre del archivo donde se almacenará el texto. Finalmente el archivo será creado y contendrá el texto que era de esperar.

Como se puede ver, este programa en ningún momento hace referencia a gmax por lo que no se puede considerar que por sí, el programa esté violando el EULA de gmax. Otra cosa es lo que decida hacer el usuario con esta herramienta. Es por esto que, como dije antes (y lo dejo bien claro :lol:) no me responsabilizo del buen o mal uso que el usuario pueda llevar a cabo con ella.

Ale, ya está. Si podéis probadla y decidme qué os parece. :)

Download

Saludos.
¡Si te buscan en nombre de la ley, huye en nombre de la libertad!!

BeRSeRKeR

 He subido una actualización. Resulta que había un problema al guardar los archivos en rutas con espacios. Ya está solucionadoooo.

Download

Saludos.
¡Si te buscan en nombre de la ley, huye en nombre de la libertad!!

donald

Me paso por aquí de cuando en cuando (1 vez cada 3 o 4 meses) ...así que si no respondo a algo no es por antipático. ;) Posteo, y me acuerdo del foro tres meses después... ;)    :-S

Juan Mellado

 
Cita de: "BeRSeRKeR"De todas formas, sigo con la curiosidad de saber si se puede lanzar un ejecutable desde memoria.

En la siguiente URL explican como hacerlo, pero tiene "miga":
http://www.security.org.sg/code/loadexe.html

Para hacer lo que tu quieres habría que cambiar el código que viene de ejemplo, para que en vez de cargar el segundo ejecutable desde disco lo hiciera desde el recurso binario. El primer ejecutable podría ser el propio programa, aunque no sé si sería mejor que fuese una aplicación de consola, para que sea del mismo tipo que la quieres ejecutar.

Saludos

BeRSeRKeR

 Muchas gracias, ahora le echaré un vistazo.

Gracias.
¡Si te buscan en nombre de la ley, huye en nombre de la libertad!!

BeRSeRKeR

 Bueno pues la utilidad esta (Mini-Spy Tool) ha crecido. Más que nada por probar cosas que uno se pregunta pero por falta de tiempo nunca prueba (y bueno, también para que no sea un programilla tan simple). Ahí va una captura. :)



El caso es que ahora la utilidad, a parte de lo que ya tenía, te permite ver los estilos de las ventanas, te permite ver y cambiar la posición y las dimensiones, también te permite hacer una ventana visible/invisible, hacer que siempre esté en lo alto (top most) e incluso maximizar, minimizar y restaurar.

Download

Y nada, creo que esta herramienta la doy por concluída. Ahora tal vez programe un visor de modelos MD5 como ActiveX para poder insertarlo en el exporter de MAXScript. De esta forma se puede hacer algo interesante y es que además de poder ver el modelo con su animación, normal mapping y demás nada más exportar, puedes acoplar el visor en una de las vistas de MAX. Estaría curioso, ¿verdad?. :lol:

Bueno, eso es todo por ahora.
¡Si te buscan en nombre de la ley, huye en nombre de la libertad!!

ethernet

 offtopic pero ontopic:

hay una libreria llamada softwire que permite "compilar" codigo en ensamblador y meterlo en memoria creando funciones (todo esto en tiempo de ejecucion)

un saludo

donald

 lo del visor estaría chulo...

Me paso por aquí de cuando en cuando (1 vez cada 3 o 4 meses) ...así que si no respondo a algo no es por antipático. ;) Posteo, y me acuerdo del foro tres meses después... ;)    :-S

BeRSeRKeR

 
Cita de: "ethernet"hay una libreria llamada softwire que permite "compilar" codigo en ensamblador y meterlo en memoria creando funciones (todo esto en tiempo de ejecucion)
Bueno, creo que si hago lo de ejecutar el programa desde memoria lo haré con el método que explica en el artículo que citó Juan Mellado. Lo que pasa es que éste necesita de un ejecutable en disco que es el que creará el proceso. Después, lo que se hace es sobreescribir la memoria ocupada por este proceso con el nuevo ejecutable. Gracias de todas formas.


Cita de: "donald"lo del visor estaría chulo...
El problema de esto es que sólo funcionaría en MAX ya que gmax no permite insertar controles ActiveX (sería su perdición :)). Bueno, en realidad sólo deja insertar el ActiveX de Flash. De todas formas, una vez hecho el visor en un ActiveX, no habría ningún problema en utilizarlo sobre una aplicación independiente de MAX.

Saludos.
¡Si te buscan en nombre de la ley, huye en nombre de la libertad!!

Zaelsius

 Bersi entérate si el método que vas a usar será compatible con Windows XP SP2 o los flags NX.. más que nada porque sería una putada que te lo currases y en 3 meses dejase de funcionar ;).

Ahora siento curiosidad por saber cómo lo hace UPX.. ¿sobreescribirá su propia memoria o lanzará otro proceso?

PD: Buen trabajo!  

Lord Trancos 2

 Bueno, he empezado a probar el exportador, y hay una cosa que no me acaba de convencer. Es algo relacionado con la forma de trabajar de cada uno, pero bueno....

Veras, yo suelo trabajar con "sub-objects" mediante materiales de tipo "Multi/Sub-Object", asi que todo el modelo esta formado por un unico mesh.

Sin embargo, para poder usar varios materiales (shaders) en un mismo modelo usando tu exportador, me veo obligado a dividir el mesh original, en varios objetos (que tampoco es mucho problema). El problema es que despues tengo que aplicarle otro modificador skin a esos objetos detachados,.... en fin,... que acaba siendo un poco rollo y ademas no se si acaba de funcionar bien ese sistema... :(

Por eso, el de der_ton me va mejor para mi forma de trabajar...

En fin, solo era comentarlo para ver que opinan otros modelers que anden perdidos por aqui, y por si te vale como idea para futuras mejoras ;)
on los años y mucho esfuerzo he llegado a atesorar una ignorancia total sobre casi todas las cosas.
Gate to Avalon (mi Blog)

donald

 tu eres un modeller-coder, Trancos ;)


Yo prefiero no usar multisubobject materials, pero oye, si me obligan...

y tb prefiero todo en la misma malla. bueno, lo que se despegará, como el arma, pues no...:) A veces, cosas como shoulder pads es interesante que vayan como objeto suelto...

no me gustan los multileches esos. ;)

pero bueno, todo es potencia, como te haga falta en un momento dado, te da corage ...




Me paso por aquí de cuando en cuando (1 vez cada 3 o 4 meses) ...así que si no respondo a algo no es por antipático. ;) Posteo, y me acuerdo del foro tres meses después... ;)    :-S

Lord Trancos 2

 Es que no me gusta texturizar todo el modelo con una unica textura... asin que no hay mas remedio  :)  
on los años y mucho esfuerzo he llegado a atesorar una ignorancia total sobre casi todas las cosas.
Gate to Avalon (mi Blog)

BeRSeRKeR

 Veré lo que puedo hacer. :)

Saludos.
¡Si te buscan en nombre de la ley, huye en nombre de la libertad!!






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.