Funcion para Ejecutar un exe desde la memoria.
- Chefito
- Profesional del Autoit
- Mensajes: 2035
- Registrado: 21 Feb 2008, 18:42
- Ubicación: Albacete/Cuenca (España)
Funcion para Ejecutar un exe desde la memoria.
Ya se ha tratado este tema por el foro. Como es un tema verdaderamente complicado y se requiere unos conocimientos gradísimos, ninguno hemos podido dar una solución a esto .
Como hoy estaba aburrido me he puesto a mirar un poco el foro de habla inglesa, y por pura casualidad he visto este post de trancexx donde habla del tema y crea una función para hacer esto . La verdad es que en ese foro hay verdaderas máquinas .
Parece que dice que en algunos casos puede fallar. También creo que dice que no funciona en Vista porque tiene un nivel de seguridad más alto para estos casos y no se trata igual el método que utiliza. Pero de todo esto no estoy muy seguro. Mi ingles no es muy bueno .
Bueno, a ver si alguien hace pruebas y vemos como va.
El post: http://www.autoitscript.com/forum/index ... opic=99412
Saludos.
Como hoy estaba aburrido me he puesto a mirar un poco el foro de habla inglesa, y por pura casualidad he visto este post de trancexx donde habla del tema y crea una función para hacer esto . La verdad es que en ese foro hay verdaderas máquinas .
Parece que dice que en algunos casos puede fallar. También creo que dice que no funciona en Vista porque tiene un nivel de seguridad más alto para estos casos y no se trata igual el método que utiliza. Pero de todo esto no estoy muy seguro. Mi ingles no es muy bueno .
Bueno, a ver si alguien hace pruebas y vemos como va.
El post: http://www.autoitscript.com/forum/index ... opic=99412
Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
Re: Funcion para Ejecutar un exe desde la memoria.
Wow... Increíble.
Como bien dice el autor, esto da nuevas formas de crear programas malintencionados pero la verdad que el hecho que pueda hacerse es increíble.
Como bien dice el autor, esto da nuevas formas de crear programas malintencionados pero la verdad que el hecho que pueda hacerse es increíble.
- BasicOs
- Site Admin
- Mensajes: 2091
- Registrado: 21 Nov 2006, 19:24
- Ubicación: El Internet - (Canarias, España)
- Contactar:
Re: Funcion para Ejecutar un exe desde la memoria.
Muy bueno para los que quieren rizar el rizo en cuanto aprovechar la mayor velocidad de la RAM, y quieran volar a máxima velocidad en vez de arrastrarse con los discos duros y demás dispositivos, habiendo memorias Ram de 1600Mhz a buen precio, puedes usar el exe desde la RAM y los datos, con lo que quitas de encima el acceso al disco duro,(previsiblemente el nucleo de lo que se ejecuta). Ocupando un programa de autoit con los datos unos 1000kb no es nada.Nahuel escribió:Wow... Increíble.
Como bien dice el autor, esto da nuevas formas de crear programas malintencionados pero la verdad que el hecho que pueda hacerse es increíble.
Ahora faltaría también correr el XP o W7 desde la RAM directamente usando la asignación de memoria virtual, y sino seguro que tiene que haber un truco para correr todo desde arriba, con memorias de 4gb.
Tambien para usar un PC sin disco duro, arrancando el XP desde CD o tarjeta de memoria, no dependes de la la velocidad tan lenta de estos dispositivos para ejecutar el programa aunque la hayas copiado primero en la memoria.
- XPyro
- Profesional del Autoit
- Mensajes: 542
- Registrado: 04 Mar 2007, 10:12
- Ubicación: México
- Contactar:
Re: Funcion para Ejecutar un exe desde la memoria.
Si muy buen este script, esperemos que a muchos de los usuarios con esta gran duda puedan darle resultado, solo espero que no sea para mal
- Chefito
- Profesional del Autoit
- Mensajes: 2035
- Registrado: 21 Feb 2008, 18:42
- Ubicación: Albacete/Cuenca (España)
Re: Funcion para Ejecutar un exe desde la memoria.
Sí, yo también me quede un poco flipado con este código . No se si lo llegaría a entender.......es muy complicado, y a mi todo lo que sea accesos a memoria me dan grima .Nahuel escribió:Wow... Increíble.
Como bien dice el autor, esto da nuevas formas de crear programas malintencionados pero la verdad que el hecho que pueda hacerse es increíble.
Yo lo he posteado no para crear programas malintencionados (los cuales se pueden hacer con esto), sino para lanzar programas exe a memoria necesarios desde un solo script de autoit. Por ejemplo, yo hace tiempo necesitaba borrar el propio programa que ejecutaba, y para eso tenía que crear otro programa aparte que lo hiciese (lo intente llamando al comando del justo al cerrar el programa, pero había veces que se borraba y otras no, ya que a veces justamente se cerraba y otras no). Con esto se pueden hacer dos scripts, compilar el secundario y que se ejecute desde el primario, sin dejar rastro (supongo, tendría que probarlo).
Esto está muy bien para ejecutar varios programas paralelos sin tener que tenerlos por separado. También se puede ejecutar un programa que necesites sin tener que guardarlo en disco temporalmente. Se puede sacar mucho partido a esta función .
Jejejeje......por si no lo sabías BasicOs ya hay un win xp cd-live desde hace tiempo . La distribución se llama pilitos (busca en google que te sale 100000000 sitios ) y se graba en un cd (supongo que también se podrá grabar en un pendrive). LLeva muchos programas necesarios para recuperación de archivos y demás reparaciones del pc. En el trabajo lo utilizabamos (aun lo utilizamos a veces) para clonar los discos duros con el Noton Gosht.BasicOs escribió:Tambien para usar un PC sin disco duro, arrancando el XP desde CD o tarjeta de memoria, no dependes de la la velocidad tan lenta de estos dispositivos para ejecutar el programa aunque la hayas copiado primero en la memoria.
Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
Re: Funcion para Ejecutar un exe desde la memoria.
Es genial el código, pero absoluta y totalmente inentendible por mi.
Está muy bien eso que decís, Chefito. Se me vienen a la cabeza un par de tareas sencillas que se podrían simplificar con el uso de este código.
Lo probé y funciona para algunas cosas... no he podido usar notepad.exe, calc.exe ni tampoco ningún script compilado de AutoIt (El autor dice que fallará para ejecutables de mayor tamaño que Autoit.exe). Pero con un programita que tenía hecho en C funcionó perfecto. Quiero probar otras cosas, como por ejemplo un programita en C que escriba en un archivo binario.. funcionará? O una aplicación que necesite cargar algunas dll... Alguien lo probó compilado al script?
Está muy bien eso que decís, Chefito. Se me vienen a la cabeza un par de tareas sencillas que se podrían simplificar con el uso de este código.
Lo probé y funciona para algunas cosas... no he podido usar notepad.exe, calc.exe ni tampoco ningún script compilado de AutoIt (El autor dice que fallará para ejecutables de mayor tamaño que Autoit.exe). Pero con un programita que tenía hecho en C funcionó perfecto. Quiero probar otras cosas, como por ejemplo un programita en C que escriba en un archivo binario.. funcionará? O una aplicación que necesite cargar algunas dll... Alguien lo probó compilado al script?
No soy un hombre de plegarias, pero si estás en el cielo sálvame por favor Superman!
- Alastor
- Aprendiz de Mago
- Mensajes: 59
- Registrado: 13 Dic 2009, 14:27
- Ubicación: Zaragoza, España
- Contactar:
Re: Funcion para Ejecutar un exe desde la memoria.
Para auto-borrar el script yo me hice esta func (crea un .bat que borra el script y luego se auto-borra a si mismo)Chefito escribió: Por ejemplo, yo hace tiempo necesitaba borrar el propio programa que ejecutaba, y para eso tenía que crear otro programa aparte que lo hiciese (lo intente llamando al comando del justo al cerrar el programa, pero había veces que se borraba y otras no, ya que a veces justamente se cerraba y otras no). Con esto se pueden hacer dos scripts, compilar el secundario y que se ejecute desde el primario, sin dejar rastro (supongo, tendría que probarlo).
Código: Seleccionar todo
#Region Comentarios
#cs
Parametros: _AutoDel($T = 2) ; Tiempo a esperar para borrar
#ce
#EndRegion Comentarios
#Region Funcion
Func _AutoDel($T = 2)
$archivo1 = FileOpen(@ScriptDir & "\autdel.bat", 10) ; Crear y abrir el archivo 'autdel.bat'
FileWriteLine($archivo1, "@echo off") ; Escribir el contenido del .bat...
FileWriteLine($archivo1, "title .")
FileWriteLine($archivo1, "ping localhost -n " & $T) ; Esto es para esperar un tiempo antes de borrar el script (para que acabe de cerrarse)
FileWriteLine($archivo1, 'del "' & @ScriptName & '"') ; Borrar el script
FileWriteLine($archivo1, "del %0") ; Borrar el .bat
FileWriteLine($archivo1, "Exit") ; Salir
FileClose($archivo1) ; Cerrar el .bat
Sleep(1000) ; Esperar 1 segundo
ShellExecute(@ScriptDir & "\autdel.bat", "", @ScriptDir, "", @SW_HIDE) ; Ejecutar el archivo en una consola oculta
EndFunc ;==>_AutoDel
#EndRegion Funcion
------------------------------
Me he quedado impresionado con esa función!
como soy muy vago para sacar los datos binarios, he hecho una GUI para que lo haga por mi xD
por si a alguien la quiere aqui esta:
Código: Seleccionar todo
Select
Case StringInStr("0409 0809 0c09 1009 1409 1809 1c09 2009 2409 2809 2c09 3009 3409", @OSLang) ; English | Inglés
Local $_Title = "GetBinaryData"
Local $_Browse = "Browse"
Local $_Copytoc = "Copy to clipboard"
Local $_Saveas = "Save as..."
Local $_Defaultname = "\binarydata.au3"
Local $_Filetoconvert[2] = ["Select the file to convert to binary", "All files (*.*)"]
Local $_Wheretosave[2] = ["Select where to save the binary data", "All files (*.*)"]
Local $_Error[4] = ["Please select a file", "Error reading the binary data", "Select where to save the file!", "Error saving the file"]
Local $_Finished = "Finished!"
Case StringInStr("040a 080a 0c0a 100a 140a 180a 1c0a 200a 240a 280a 2c0a 300a 340a 380a 3c0a 400a 440a 480a 4c0a 500a", @OSLang) ; Spanish | Español
Local $_Title = "Obtener datos binarios"
Local $_Browse = "Buscar"
Local $_Copytoc = "Copiar al portapapeles"
Local $_Saveas = "Guardar como..."
Local $_Defaultname = "\Datosbinarios.au3"
Local $_Filetoconvert[2] = ["Selecciona el archivo para convertir a binario", "Todos los archivos (*.*)"]
Local $_Wheretosave[2] = ["Selecciona donde guardar los datos binarios", "Todos los archivos (*.*)"]
Local $_Error[4] = ["Por favor selecciona un archivo", "Error leyendo los datos binarios", "Selecciona donde guardar el archivo!", "Error guardando el archivo"]
Local $_Finished = "Finalizado!"
Case Else ; Other languages | Otros idiomas
Local $_Title = "GetBinaryData"
Local $_Browse = "Browse"
Local $_Copytoc = "Copy to clipboard"
Local $_Saveas = "Save as..."
Local $_Defaultname = "\binarydata.au3"
Local $_Filetoconvert[2] = ["Select the file to convert to binary", "All files (*.*)"]
Local $_Wheretosave[2] = ["Select where to save the binary data", "All files (*.*)"]
Local $_Error[4] = ["Please select a file", "Error reading the binary data", "Select where to save the file!", "Error saving the file"]
Local $_Finished = "Finished!"
EndSelect
Global Const $MAX_LINESIZE = 4095
#Region GUI
$getbinarygui = GUICreate($_Title, 248, 114, 192, 124)
$getbinaryfilename = GUICtrlCreateInput("", 8, 8, 177, 21)
$getbinarybrowse = GUICtrlCreateButton($_Browse, 192, 8, 49, 21, 0x00020000)
$getbinarycopytoclip = GUICtrlCreateCheckbox($_Copytoc, 8, 40, 150, 17)
$getbinarysaveas = GUICtrlCreateCheckbox($_Saveas, 8, 64, 150, 17)
$getbinarysavelocation = GUICtrlCreateInput(@ScriptDir & $_Defaultname, 8, 88, 89, 21) ; Default at script folder | Por defecto en la carpeta del script
GUICtrlSetState($getbinarysavelocation, 32) ; 32 = hide ; 16 = show | 32 = Ocultar ; 16 = Mostrar
$getbinarysaveselect = GUICtrlCreateButton($_Browse, 104, 88, 57, 21, 0x00020000)
GUICtrlSetState($getbinarysaveselect, 32) ; 32 = hide ; 16 = show | 32 = Ocultar ; 16 = Mostrar
$GetBinary = GUICtrlCreateButton("GetBinary", 168, 40, 73, 41, 0x00020000)
GUISetState(@SW_SHOW) ; Show GUI | Mostrar la GUI
#EndRegion GUI
While 1
$e = GUIGetMsg()
Switch $e
Case -3 ; If close is pressed... | Si se presiona cerrar...
Exit
Case $getbinarybrowse ; Select the file to convert | Seleccionar el archivo del que sacar los datos binarios
$f = FileOpenDialog($_Filetoconvert[0], @ScriptDir & "\", $_Filetoconvert[1], 1 + 4)
If Not @error Then GUICtrlSetData($getbinaryfilename, $f)
Case $getbinarysaveas
If GUICtrlRead($getbinarysaveas) = 1 Then ; If the checkbox is checked | Si esta activada la checkbox...
GUICtrlSetState($getbinarysavelocation, 16) ; 16 = show | Mostrar
GUICtrlSetState($getbinarysaveselect, 16) ; 16 = show | Mostrar
Else
GUICtrlSetState($getbinarysavelocation, 32) ; 32 = hide | Ocultar
GUICtrlSetState($getbinarysaveselect, 32) ; 32 = hide | Ocultar
EndIf
Case $getbinarysaveselect
$f = FileSaveDialog($_Wheretosave[0], @ScriptDir & "\", $_Wheretosave[1], 1 + 4) ; Dialog to select where to save the file | Dialogo para seleccionar donde guardar el archivo
If Not @error Then GUICtrlSetData($getbinarysavelocation, $f)
Case $GetBinary
Global $sModule = GUICtrlRead($getbinaryfilename)
If Not FileExists($sModule) Then
Errores(1)
Else
$FinalBin = _GetBinaryFromFile($sModule) ; Get binary data from the file | Obtiene los datos binarios del archivo
If @error Then
Errores(2)
Else
If GUICtrlRead($getbinarycopytoclip) = 1 Then ClipPut($FinalBin) ; If checked, copy the data to the clipboard | SI esta seleccionada la checkbox, copia los datos binarios al portapapeles
If GUICtrlRead($getbinarysaveas) = 1 Then
$location = GUICtrlRead($getbinarysavelocation)
If $location = "" Then Errores(3)
$file = FileOpen($location, 10)
FileWrite($file, $FinalBin)
FileClose($file)
Else
Errores(4)
EndIf
If Not @error Then MsgBox(0, $_Finished, $_Finished)
EndIf
EndIf
EndSwitch
WEnd
Func Errores($errornum) ; Errors | Errores
Select
Case $errornum = 1
MsgBox(0, "Error", $_Error[0])
Case $errornum = 2
MsgBox(0, "Error", $_Error[1])
Case $errornum = 3
MsgBox(0, "Error", $_Error[2])
Case $errornum = 4
MsgBox(0, "Error", $_Error[3])
EndSelect
EndFunc ;==>Errores
Func _GetBinaryFromFile($sModule)
Global $hModule = FileOpen($sModule, 16)
If @error Then Exit
Global $bBinary = FileRead($hModule)
FileClose($hModule)
Global $iNewLine, $j
Global $iChinkSize = 32
Global $sBinary
For $i = 1 To BinaryLen($bBinary) Step $iChinkSize
$j += 1
If 4 * ($j * $iChinkSize) > $MAX_LINESIZE - 129 Then
$iNewLine = 1
EndIf
If $iNewLine Then
$iNewLine = 0
$j = 0
$sBinary = StringTrimRight($sBinary, 5)
$sBinary &= @CRLF & '$bBinary &= "' & StringTrimLeft(BinaryMid($bBinary, $i, $iChinkSize), 2) & '" & _' & @CRLF
ContinueLoop
EndIf
If $i = 1 Then
$sBinary &= '$bBinary = "' & BinaryMid($bBinary, $i, $iChinkSize) & '" & _' & @CRLF
Else
$sBinary &= ' "' & StringTrimLeft(BinaryMid($bBinary, $i, $iChinkSize), 2) & '" & _' & @CRLF
EndIf
Next
$sBinary = StringTrimRight($sBinary, 5)
Return $sBinary
EndFunc ;==>_GetBinaryFromFile
Aprendiendo AutoIt y C++
- Chefito
- Profesional del Autoit
- Mensajes: 2035
- Registrado: 21 Feb 2008, 18:42
- Ubicación: Albacete/Cuenca (España)
Re: Funcion para Ejecutar un exe desde la memoria.
Sí, eso lo hemos hecho todos .Yo también utilizaba archivos .vbs que se autoborraban.Alastor escribió:Para auto-borrar el script yo me hice esta func (crea un .bat que borra el script y luego se auto-borra a si mismo)
Pero el problema que planteaba era un programa que se borrase a sí mismo sin tener que crear otro programa auxiliar en el disco duro, y ejecutar este. Además, algunos antivirus detectaban este comportamiento (sobre todo con los .bat y .vbs) como algo maligno. Puede que jugando con la memoria esta situación se evite.....o puede que no .
Seguro que a más de uno nos viene bien .Alastor escribió:como soy muy vago para sacar los datos binarios, he hecho una GUI para que lo haga por mi xD
por si a alguien la quiere aqui esta
Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
- Ximorro
- Profesional del Autoit
- Mensajes: 1500
- Registrado: 10 Jul 2009, 12:35
- Ubicación: Castellón, España
Re: Funcion para Ejecutar un exe desde la memoria.
A lo de "ejecutar exes desde memoria" no le veo utilidad, lo que quiero decir es que no lo entiendo.
No estoy muy de acuerdo con eso que decís de que el exe irá más rápido al ejecutarse desde memoria RAM y no del disco. Vamos a ver ¡todo se ejecuta desde memoria! Lo que Windows no permite es que el loader de programas cargue algo directamente de memoria, tiene que hacerlo desde disco, y eso es justo por cuestiones de seguridad (eso lo he leído en el post ese, no soy experto). Y precisamente no va en Vista porque parece mentira pero es más seguro, al menos en ese aspecto. Este invento se salta eso (en XP) por ejemplo para poder crear programas en tiempo real sin necesidad de guardarlos en disco primero.
Pero lo que quiero hacer notar es que eso sólo afecta al loader, es decir, a lo que mete el programa desde el disco a la memoria... ¡después se ejecuta en memoria, por supuesto!. No va a ir más rápido por ejecutarlo con esto que desde disco, una vez cargado. Lo que irá más rápido es la inicialización de la ejecución, si generar el programa desde otro programa es más rápido que cargarlo desde disco.
Desgraciadamente a esto sólo le veo usos maliciosos, en realidad, por lo que he entendido del post, el programa lo que hace es coger un mini proceso cargado legalmente y justo antes de ejecutarlo limpia su memoria a lo bestia y mete el programa objetivo engañando al Windows para que ejecute este nuevo código... ostras es que sólo el concepto ya suena a virus, troyano...
Espero que me abráis los ojos con utilidades realmente interesantes. Y no, con lo de "va más rápido porque está en memoria" no estoy de acuerdo por lo arriba expuesto.
Ni que decir tiene que estoy flipado con el nivel del autor de ese programa, evidentemente el tío es una máquina...
No estoy muy de acuerdo con eso que decís de que el exe irá más rápido al ejecutarse desde memoria RAM y no del disco. Vamos a ver ¡todo se ejecuta desde memoria! Lo que Windows no permite es que el loader de programas cargue algo directamente de memoria, tiene que hacerlo desde disco, y eso es justo por cuestiones de seguridad (eso lo he leído en el post ese, no soy experto). Y precisamente no va en Vista porque parece mentira pero es más seguro, al menos en ese aspecto. Este invento se salta eso (en XP) por ejemplo para poder crear programas en tiempo real sin necesidad de guardarlos en disco primero.
Pero lo que quiero hacer notar es que eso sólo afecta al loader, es decir, a lo que mete el programa desde el disco a la memoria... ¡después se ejecuta en memoria, por supuesto!. No va a ir más rápido por ejecutarlo con esto que desde disco, una vez cargado. Lo que irá más rápido es la inicialización de la ejecución, si generar el programa desde otro programa es más rápido que cargarlo desde disco.
Desgraciadamente a esto sólo le veo usos maliciosos, en realidad, por lo que he entendido del post, el programa lo que hace es coger un mini proceso cargado legalmente y justo antes de ejecutarlo limpia su memoria a lo bestia y mete el programa objetivo engañando al Windows para que ejecute este nuevo código... ostras es que sólo el concepto ya suena a virus, troyano...
Espero que me abráis los ojos con utilidades realmente interesantes. Y no, con lo de "va más rápido porque está en memoria" no estoy de acuerdo por lo arriba expuesto.
Ni que decir tiene que estoy flipado con el nivel del autor de ese programa, evidentemente el tío es una máquina...
"¿Y no será que en este mundo hay cada vez más gente y menos personas?". Mafalda (Quino)
- Chefito
- Profesional del Autoit
- Mensajes: 2035
- Registrado: 21 Feb 2008, 18:42
- Ubicación: Albacete/Cuenca (España)
Re: Funcion para Ejecutar un exe desde la memoria.
Utilidades??? Muchas!!!
Hace tiempo quería hacer un escritorio remoto en vb y necesitaba toda la velocidad posible para cargar las imágenes del escritorio remoto. Se me ocurrió que lo más rápido sería coger los datos de las imágenes que te envía el cliente y cargarlas directamente a memoria .
Igual que pasa con las imágenes también podría pasar con el video y el sonido. Hay veces que al poder ganar algo de velocidad también es posible ganar algo de calidad.
El poder coger los datos directamente de la red y cargarlos en memoria en vez de tener que ir grabandolos en el disco duro para luego cogerlos, es un factor en velocidad.
Pero estoy deacuerdo contigo de que casi siempre esto se utiliza para hacer programas maliciosos. Una pena.
Saludos.
Hace tiempo quería hacer un escritorio remoto en vb y necesitaba toda la velocidad posible para cargar las imágenes del escritorio remoto. Se me ocurrió que lo más rápido sería coger los datos de las imágenes que te envía el cliente y cargarlas directamente a memoria .
Igual que pasa con las imágenes también podría pasar con el video y el sonido. Hay veces que al poder ganar algo de velocidad también es posible ganar algo de calidad.
El poder coger los datos directamente de la red y cargarlos en memoria en vez de tener que ir grabandolos en el disco duro para luego cogerlos, es un factor en velocidad.
Pero estoy deacuerdo contigo de que casi siempre esto se utiliza para hacer programas maliciosos. Una pena.
Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
- Ximorro
- Profesional del Autoit
- Mensajes: 1500
- Registrado: 10 Jul 2009, 12:35
- Ubicación: Castellón, España
Re: Funcion para Ejecutar un exe desde la memoria.
Pues tú hablas de datos, eso es otra cosa.
En este caso siguiendo ese esquema lo que haríamos es descargar programas de internet y ejecutarlos sin necesidad de guardarlos en disco... menudo peligro.
Supongo que irá más rápido, al no mirarlos el antivirus, que está enganchado en el loader para analizar todo lo que se ejecuta...
Las imágenes son una cosa, puede que necesites cargar un montón, pero es bastante raro necesitar cargar y ejecutar al vuelo un montón de ejecutables... a menos que sean una caterva de viruses...
Espero que eso no ponga a los ejecutables de AutoIt en la lista de virus de los antivirus, como ya pasa cuando lo encriptas, que no puedo encriptar porque el McAfee me dice que es un virus y no hay manera de decirle que no lo es...
En este caso siguiendo ese esquema lo que haríamos es descargar programas de internet y ejecutarlos sin necesidad de guardarlos en disco... menudo peligro.
Supongo que irá más rápido, al no mirarlos el antivirus, que está enganchado en el loader para analizar todo lo que se ejecuta...
Las imágenes son una cosa, puede que necesites cargar un montón, pero es bastante raro necesitar cargar y ejecutar al vuelo un montón de ejecutables... a menos que sean una caterva de viruses...
Espero que eso no ponga a los ejecutables de AutoIt en la lista de virus de los antivirus, como ya pasa cuando lo encriptas, que no puedo encriptar porque el McAfee me dice que es un virus y no hay manera de decirle que no lo es...
"¿Y no será que en este mundo hay cada vez más gente y menos personas?". Mafalda (Quino)
- Chefito
- Profesional del Autoit
- Mensajes: 2035
- Registrado: 21 Feb 2008, 18:42
- Ubicación: Albacete/Cuenca (España)
Re: Funcion para Ejecutar un exe desde la memoria.
Bueno, la verdad es que te doy la razón. Yo me refiero a poder cargar archivos no ejecutables directamente en los controles, que también tiene tela el tema .
Saludos.
Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
Re: Funcion para Ejecutar un exe desde la memoria.
Alguém testou no Windows Vista / 7?
Parece que funciona no Windows Vista e 7, mas não testei.
Obs.: Pelo que pude notar essa técnica é instável, então cuidado.
PD:Ayuda Resumen: ¿Funciona en W.Vista o 7? Aunque puede ser inestable cuidado!
Parece que funciona no Windows Vista e 7, mas não testei.
Obs.: Pelo que pude notar essa técnica é instável, então cuidado.
PD:Ayuda Resumen: ¿Funciona en W.Vista o 7? Aunque puede ser inestable cuidado!
Idade/Age: 16
Web: http://meadiciona.com/cemim/
- Alastor
- Aprendiz de Mago
- Mensajes: 59
- Registrado: 13 Dic 2009, 14:27
- Ubicación: Zaragoza, España
- Contactar:
Re: Funcion para Ejecutar un exe desde la memoria.
i can't understand your language, so I'll answer in englishSplash escribió:Alguém testou no Windows Vista / 7?
Parece que funciona no Windows Vista e 7, mas não testei.
Obs.: Pelo que pude notar essa técnica é instável, então cuidado.
PD:Ayuda Resumen: ¿Funciona en W.Vista o 7? Aunque puede ser inestable cuidado!
It works under Windows Vista/Windows 7 if you change some things (that's what the autor said)
el autor dijo que funcionaría en vista/win7 si se le hacian algunas modificaciones
Aprendiendo AutoIt y C++
Re: Funcion para Ejecutar un exe desde la memoria.
Código: Seleccionar todo
i can't understand your language, so I'll answer in english
It works under Windows Vista/Windows 7 if you change some things (that's what the autor said)
but not say if now is working or not on Windows Vista/Seven.
Sim, mas foi a muito tempo atras. O autor fez algumas novas modificações no script,
mas, não disse se com as novas modificações ele funciona ou não no Windows Vista/Seven.
Não ficou claro/certo/explícito.
Idade/Age: 16
Web: http://meadiciona.com/cemim/
- Alastor
- Aprendiz de Mago
- Mensajes: 59
- Registrado: 13 Dic 2009, 14:27
- Ubicación: Zaragoza, España
- Contactar:
Re: Funcion para Ejecutar un exe desde la memoria.
Splash escribió:Yes, but this is a long time ago. The author made some new modifications on script,
but not say if now is working or not on Windows Vista/Seven.
He only said that he had added support for 64bit programs.trancexx escribió:edit:
64bit support added. That means you can embed either x64 or x86 modules.
If your AutoIt is x64 you embed x64 modules. If AutoIt is x86 embed x86.
x64 AutoIt could also use embedded x86 modules but I don't like that because needed structures would have to be changed to something that's not meeting aesthetics standards :P.
Anyway, I'll try the new script at Windows Vista and report the results later.
Aprendiendo AutoIt y C++