sat23 598711bbe8 内存加载DLL项目升级到VC9.0 преди 3 години
..
doc 670fd45d25 更换仓库,从repos_scbc换到assit专用仓库。 преди 3 години
example 598711bbe8 内存加载DLL项目升级到VC9.0 преди 3 години
tests 670fd45d25 更换仓库,从repos_scbc换到assit专用仓库。 преди 3 години
.gitignore 670fd45d25 更换仓库,从repos_scbc换到assit专用仓库。 преди 3 години
.travis.yml 670fd45d25 更换仓库,从repos_scbc换到assit专用仓库。 преди 3 години
CMakeLists.txt 670fd45d25 更换仓库,从repos_scbc换到assit专用仓库。 преди 3 години
LICENSE.txt 670fd45d25 更换仓库,从repos_scbc换到assit专用仓库。 преди 3 години
Makefile 670fd45d25 更换仓库,从repos_scbc换到assit专用仓库。 преди 3 години
MemoryModule.c 598711bbe8 内存加载DLL项目升级到VC9.0 преди 3 години
MemoryModule.h 598711bbe8 内存加载DLL项目升级到VC9.0 преди 3 години
appveyor.yml 670fd45d25 更换仓库,从repos_scbc换到assit专用仓库。 преди 3 години
readme.md 670fd45d25 更换仓库,从repos_scbc换到assit专用仓库。 преди 3 години
stdint.h 598711bbe8 内存加载DLL项目升级到VC9.0 преди 3 години

readme.md

MemoryModule

Build StatusBuild status

The default windows API functions to load external libraries into a program (LoadLibrary, LoadLibraryEx) only work with files on the filesystem. It's therefore impossible to load a DLL from memory.

But sometimes, you need exactly this functionality (e.g. you don't want to distribute a lot of files or want to make disassembling harder). Common workarounds for this problems are to write the DLL into a temporary file first and import it from there. When the program terminates, the temporary file gets deleted.

MemoryModule is a library that can be used to load a DLL completely from memory - without storing on the disk first.

See doc/readme.txt for more informations about the format of a DLL file and a tutorial how they can be loaded directly.