mirror of
https://github.com/fancycode/MemoryModule
synced 2026-06-06 15:44:28 +00:00
+4
-4
@@ -423,7 +423,7 @@ BuildImportTable(PMEMORYMODULE module)
|
||||
return result;
|
||||
}
|
||||
|
||||
static HCUSTOMMODULE _LoadLibrary(LPCSTR filename, void *userdata)
|
||||
HCUSTOMMODULE MemoryDefaultLoadLibrary(LPCSTR filename, void *userdata)
|
||||
{
|
||||
HMODULE result;
|
||||
UNREFERENCED_PARAMETER(userdata);
|
||||
@@ -435,13 +435,13 @@ static HCUSTOMMODULE _LoadLibrary(LPCSTR filename, void *userdata)
|
||||
return (HCUSTOMMODULE) result;
|
||||
}
|
||||
|
||||
static FARPROC _GetProcAddress(HCUSTOMMODULE module, LPCSTR name, void *userdata)
|
||||
FARPROC MemoryDefaultGetProcAddress(HCUSTOMMODULE module, LPCSTR name, void *userdata)
|
||||
{
|
||||
UNREFERENCED_PARAMETER(userdata);
|
||||
return (FARPROC) GetProcAddress((HMODULE) module, name);
|
||||
}
|
||||
|
||||
static void _FreeLibrary(HCUSTOMMODULE module, void *userdata)
|
||||
void MemoryDefaultFreeLibrary(HCUSTOMMODULE module, void *userdata)
|
||||
{
|
||||
UNREFERENCED_PARAMETER(userdata);
|
||||
FreeLibrary((HMODULE) module);
|
||||
@@ -449,7 +449,7 @@ static void _FreeLibrary(HCUSTOMMODULE module, void *userdata)
|
||||
|
||||
HMEMORYMODULE MemoryLoadLibrary(const void *data, size_t size)
|
||||
{
|
||||
return MemoryLoadLibraryEx(data, size, _LoadLibrary, _GetProcAddress, _FreeLibrary, NULL);
|
||||
return MemoryLoadLibraryEx(data, size, MemoryDefaultLoadLibrary, MemoryDefaultGetProcAddress, MemoryDefaultFreeLibrary, NULL);
|
||||
}
|
||||
|
||||
HMEMORYMODULE MemoryLoadLibraryEx(const void *data, size_t size,
|
||||
|
||||
@@ -117,6 +117,30 @@ int MemoryLoadString(HMEMORYMODULE, UINT, LPTSTR, int);
|
||||
*/
|
||||
int MemoryLoadStringEx(HMEMORYMODULE, UINT, LPTSTR, int, WORD);
|
||||
|
||||
/**
|
||||
* Default implementation of CustomLoadLibraryFunc that calls LoadLibraryA
|
||||
* internally to load an additional libary.
|
||||
*
|
||||
* This is the default as used by MemoryLoadLibrary.
|
||||
*/
|
||||
HCUSTOMMODULE MemoryDefaultLoadLibrary(LPCSTR, void *);
|
||||
|
||||
/**
|
||||
* Default implementation of CustomGetProcAddressFunc that calls GetProcAddress
|
||||
* internally to get the address of an exported function.
|
||||
*
|
||||
* This is the default as used by MemoryLoadLibrary.
|
||||
*/
|
||||
FARPROC MemoryDefaultGetProcAddress(HCUSTOMMODULE, LPCSTR, void *);
|
||||
|
||||
/**
|
||||
* Default implementation of CustomFreeLibraryFunc that calls FreeLibrary
|
||||
* internally to release an additional libary.
|
||||
*
|
||||
* This is the default as used by MemoryLoadLibrary.
|
||||
*/
|
||||
void MemoryDefaultFreeLibrary(HCUSTOMMODULE, void *);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user