Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: dracrac en 11 Diciembre 2016, 19:25 pm



Título: Batch a exe
Publicado por: dracrac en 11 Diciembre 2016, 19:25 pm
Saludos,

Como puedo crear un exe a partir de un batch junto con sus archivos y carpetas sin perder el batch y poderlo extraer del exe en cualquier momento?

He podido generar un exe pero se me pierden los archivos originales.

Gracias


Título: Re: Batch a exe
Publicado por: Eleкtro en 11 Diciembre 2016, 19:32 pm
Como puedo crear un exe a partir de un batch junto con sus archivos y carpetas sin perder el batch y poderlo extraer del exe en cualquier momento?

Hola.

El archivo original.bat nunca se pierde, puesto que "conversión" de .bat a .exe como tal no existe, no es posible al no ser un lenguaje compilable. Cuando utilizas un packer para "convertir" de .bat a .exe, el archivo original.bat siempre se extraerá al directorio temporal del sistema cuando ejecutes el .exe, allí puedes encontrar el archivo .bat.

Si buscas una forma más sencilla de poder extraer en todo momento los archivos empacados, entonces puedes utilizar un compresor de archivos como WinRAR para construir un archivo SFX autoextraible, el resultado será un archivo .exe que al ejecutarlo iniciará el archivo .bat que le hayas indicado en las opciones del SFX, y podrás descomprimir el .exe en cualquier momento con el mismo WinRAR u otros.

Saludos!


Título: Re: Batch a exe
Publicado por: dracrac en 13 Diciembre 2016, 13:17 pm
Saludos Elektro,

Me gustaria hacerlo como lo tienes en esta entrada:
Mega-Pack de "tips" para Windows 7 x64.

Lo has hecho con el winrar? se puede hacer con 7z?

Gracias de nuevo


Título: Re: Batch a exe
Publicado por: Eleкtro en 13 Diciembre 2016, 16:26 pm
Me gustaria hacerlo como lo tienes en esta entrada:
Mega-Pack de "tips" para Windows 7 x64.

Lo has hecho con el winrar? se puede hacer con 7z?

No se, hace 4 años de ese post y ahora uso Inno Setup para crear instaladores xD, pero supongo que si, ahí en ese post escribí que los archivos SFX los hice con WinRAR.

Sí, puedes crear archivos autoextraibles con 7zip también, aunque la forma de hacerlo parece más tediosa que con WinRAR:
  • Guía básica (http://es.wikihow.com/usar-7Zip-para-crear-un-archivo-auto-ejecutable)
  • Guía avanzada (http://ntsblog.homedev.com.au/index.php/2015/05/14/self-extracting-archive-runs-setup-exe-7zip-sfx-switch)
  • Documentación oficial (https://sevenzip.osdn.jp/chm/cmdline/switches/sfx.htm)

También puedes probar a usar herramientas como estas:
  • https://sourceforge.net/projects/sfx-maker/
  • https://sourceforge.net/projects/s-zipsfxbuilder/

Saludos!


Título: Re: Batch a exe
Publicado por: dracrac en 17 Diciembre 2016, 18:51 pm
Muchas Gracias Elektro por toda la info.

Al hacer los exectuables con 7z SFX Builder segun la info que me has pasado al terminar me sale el asistente para la compatibilidad de programas diciendo:

Este programa podria no haberse instalado correctamente...


Sabes porque aparece esta ventana y como solventarlo? gracias de nuevo




Título: Re: Batch a exe
Publicado por: Eleкtro en 17 Diciembre 2016, 19:22 pm
Muchas Gracias Elektro por toda la info.

Al hacer los exectuables con 7z SFX Builder segun la info que me has pasado al terminar me sale el asistente para la compatibilidad de programas diciendo:

Este programa podria no haberse instalado correctamente...


Sabes porque aparece esta ventana y como solventarlo? gracias de nuevo

Hola.

Primero de nada, ten en cuenta que no he utilizado esos programas, solo los busqué en Google para mostrarte alguna alternativa, puedes buscar más por ti mismo:
  • ...Magia Negra... (https://lmgtfy.com/?q=sfx+builder)

El diálogo del asistente de compatibilidad de Windows, puede mostrarse incluso cuando el programa se haya instalado correctamente (de ahí el "podria no haberse instalado correctamente" -en el mensaje del asistente), y puede deberse por varias razones, entre ellas, una configuración conflictiva en el manifiesto de la aplicación del programa. Viendo que el programa 7z SFX Builder es un proyecto abandonado, y ya algo antiguo, podría estar causando ese falso positivo de incompatibilidad en las versiones de Windows más recientes.

Si me pidieras mi recomendación, yo te diría que en lugar de WinRAR o 7-Zip utilizases un programma llamado ExeScript Converter para empacar los archivos bat, sin embargo, esto no te lo recomendé al principio por que no es una aplicación gratuita:
  • http://www.scriptcode.com/download/
( siempre puedes buscar un crack por Internet ...los hay. )

Si quieres, puedes pasarme los archivos.bat por mensaje privado, me dices que archivo.bat es el que se debe ejecutar, y te envio el SFX montado con WinRAR (o con ExeScript si prefieres), no se tarda nada en hacerlo.

¡Saludos!


Título: Re: Batch a exe
Publicado por: dracrac en 18 Diciembre 2016, 19:50 pm
Gracias de nuevo Elektro !!  :xD

Ya solucione el problema con el 7z, utilizando el 7zsD.sfx en vez del 7zS.sfx no me aparece el  mensaje de compatibilidad.

Con el programa 7z SFX Builder me funciona perfecto.

Cuando lo quiero hacer de forma automatica por la linea de comandos no me coge bien el icono del exe. El archivo que utilizo de configuracion del sfx es el siguiente:

--Instalar.txt--------------------------------------------------------------------------------------------------
;!@Install@!UTF-8!
GUIMode="2"
RunProgram="instalar.bat"
;Config file generated by 7z SFX Builder v2.1. (http://sourceforge.net/projects/s-zipsfxbuilder/)
;!@InstallEnd@!
7zSFXBuilder_7zArchive=C:\Instalador\instalar.7z
7zSFXBuilder_SFXModule=C:\Instalador\7zSD.sfx
7zSFXBuilder_SFXName=C:\Instalador\instalar.exe
7zSFXBuilder_SFXIcon=C:\Instalador\instalar.ico
------------------------------------------------------------------------------------------------------------------

la forma de generar el exe pongo lo siguiente en el cmd
Código:
c:\instalador>copy /b 7zSD.sfx + instalar.txt + instalar.7z instalar.exe


Hay alguna forma de hacer esto por la linea de comandos y que te coja bien el icono?Gracias de nuevo


Saludos