Tengo un archivo DLL y quiero ejecutarlo en Windows. Obtuve esta DLL desde un sitio de Challenge que alega que la DLL debe ejecutarse de forma independiente.Cómo ejecuto un archivo * .dll
Respuesta
Para ejecutar las funciones en una DLL, primero descubra cuáles son esas funciones que están usando cualquier programa de análisis PE (Portable Executable) (por ejemplo, Dependency Walker). A continuación, utilice RUNDLL32.EXE con this syntax:
RUNDLL32.EXE <dllname>,<entrypoint> <optional arguments>
dllname es la ruta y el nombre de su archivo DLL, punto de entrada es el nombre de la función, y los argumentos opcionales son los argumentos de la función
.Los archivos .DLL no son ejecutables en el sentido de que los archivos .EXE/.COM/.BAT son ejecutables, por lo que no estoy seguro de lo que quiere decir.
Puede utilizar la aplicación Dependency Walker que viene con el SDK de Windows para interrogar a un .DLL y ver qué funciones exporta el archivo.
puede ejecutar una función definida en una Archivo DLL utilizando el comando rundll. Puede explorar las funciones disponibles usando Dependency Walker.
La siguiente serie de pasos podría ser útil:
- Abra el Explorador de Windows
- En la esquina superior izquierda, haga clic en "Organizar"
- seleccione "Opciones de carpeta y búsqueda"
- conmutador a la pestaña "Ver"
- Desplácese hacia abajo y desmarque "Ocultar extensiones de archivo para tipos de archivos conocidos"
- Haga clic en Aceptar
- Ahora encontrar el archivo
dll
- Haga clic derecho sobre él y seleccione "Cambiar nombre"
- cambiar la extensión (lo que viene después de la última
.
) y el cambio a.exe
se pueden omitir algunos detalles sobre la base de suposiciones. Hipótesis válida porque el usuario pudo publicar esta pregunta y usar una computadora e Internet, por lo tanto, "esto debería saber". Al hacer referencia con "clic derecho" y "seleccionar cambio de nombre", haga clic en Aceptar, etc. –
Aunque la pregunta en sí contiene la palabra "ejecutar", no se refiere a convertir un dll en exe -con un esfuerzo mínimo-. Las cosas simplemente no funcionan así, cambiando una extensión y viendo cómo sucede la magia. Ejecución significa invocar un método en el dll. Es por eso que di -1. – ozanmuyes
La misma razón que la anterior. El propósito es comprender dll, no intentar por arte de magia alejarse de él. –
no se puede " ejecutar "una DLL". Puede ejecutar funciones dentro de la DLL, como se explica en las otras respuestas. Aunque los archivos .EXE y .DLL son esencialmente idénticos en términos de formato, la característica distintiva de un .EXE es que contiene un "punto de entrada" designado para ir y hacer aquello para lo que se creó el EXE. Las DLL en realidad tienen algo similar, pero el propósito de la "DLL principal" es solo realizar la inicialización y no cumplir el propósito principal de la DLL; eso es para (presumiblemente) varias otras funciones que contiene.
Puede ejecutar cualquiera de las funciones exportadas por una DLL, suponiendo que sabe cuál quiere ejecutar; un EXE puede contener una gran cantidad de funciones, pero una y solo una está especialmente diseñada para ejecutarse simplemente "ejecutándola".
para ejecutar un .dll file..First averiguar cuáles son las funciones que se van a archivos exporting..Dll excecute las funciones especificadas en el Category..To exportación saber qué función es la exportación se refiere "FileAlyzer" Aplicación .. Le mostrará la función de exportación en la categoría "PE EXPORT".Notedown la función nombre-- continuación, abra el símbolo del sistema, dllname Tipo Rundll32, functionname (dllname - nombre de la DLL) (nombre Functionname-- de la función que encontrar bajo la Exportación PE) Nota: makesure que la ubicación del símbolo del sistema es la ubicación del archivo dll
Si bien muchas personas han señalado que no se pueden ejecutar dlls directamente y deben usar rundll32.exe para ejecutar funciones exportadas, aquí hay una captura de pantalla de un archivo dll real ejecutando como un ejecutable:
Aunque no se puede ejecutar directamente los archivos DLL, sospecho que es posible ejecutarlos desde otro proceso utilizando una función API de Windows de CreateProcess:
https://msdn.microsoft.com/en-us/library/windows/desktop/ms682425(v=vs.85).aspx
- 1. ¿Cómo ejecuto un archivo XSLT?
- 2. ¿Cómo ejecuto un archivo en localhost?
- 3. ¿Cómo descompilo un archivo .dll?
- 4. ¿Cómo ejecuto un archivo Ruby en un entorno de Rails?
- 5. ¿Cómo ejecuto un script usando un archivo BAT?
- 6. Cómo depurar un archivo DLL en Delphi
- 7. Al compilar un archivo DLL, ¿el archivo LIB generado contiene el nombre de la DLL?
- 8. ¿Cómo ejecuto un archivo por lotes desde mi aplicación Java?
- 9. Cargando dinámicamente un archivo DLL
- 10. ¿Cómo ejecuto un servidor Mercurial?
- 11. acceder a .net2.0 DLL en un archivo DLL .NET 4.0
- 12. ¿Cómo ejecuto MinGW con un script?
- 13. crear un archivo dll en C#
- 14. Archivo .dll no accesible
- 15. Leer recursos de un archivo DLL
- 16. Archivo DLL versión
- 17. Asegure un archivo DLL con un archivo de licencia
- 18. Obteniendo CLSID para un archivo DLL?
- 19. Descarga de un archivo dll en mef
- 20. ¿Cómo ejecuto un archivo bat en el fondo de otro archivo bat?
- 21. ¿Cómo ejecuto un contenedor desde el interior de un contenedor?
- 22. ¿Cómo establecer un ícono personalizado para el archivo dll?
- 23. ¿Cómo registro un archivo .NET DLL en el GAC?
- 24. ¿Cómo cargar y descargar dinámicamente un archivo DLL nativo?
- 25. ¿Cómo hacer un archivo JAR que incluya archivos DLL?
- 26. ¿Cómo puedo usar un archivo DLL de Python?
- 27. ¿Cómo creo un archivo XML Intellisense para mi DLL?
- 28. Cómo descompilar un archivo .dll creado en VS.net
- 29. ¿Cómo creo un recurso dll
- 30. Cómo ejecuto varias líneas de Ruby en el archivo html.erb
"Soy yo, Leclerc" – Galwegian
Si le han indicado para ejecutarlo, pregunte a las personas que se lo dieron, no a nosotros. –
@Galwegian +10 para la broma de Allo Allo. – Salgar