Mercurial > pub > dyncall > dyncall
diff dynload/dynload_windows.c @ 242:85b61e8facfe
dynload:
- added new function dlGetLibraryPath to get path of already loaded lib
- covered new function in dynload_plain test
- cleanups/cosmetics for consistency
author | Tassilo Philipp |
---|---|
date | Thu, 04 May 2017 13:42:17 +0200 |
parents | 0ce6beba55df |
children | f5577f6bf97a |
line wrap: on
line diff
--- a/dynload/dynload_windows.c Tue May 02 03:49:56 2017 +0200 +++ b/dynload/dynload_windows.c Thu May 04 13:42:17 2017 +0200 @@ -44,13 +44,21 @@ return (DLLib*)(libPath != NULL ? LoadLibraryA(libPath) : GetModuleHandle(NULL)); } -void* dlFindSymbol(DLLib* libHandle, const char* symbol) + +void* dlFindSymbol(DLLib* pLib, const char* pSymbolName) { - return (void*) GetProcAddress((HINSTANCE)libHandle, symbol); + return (void*)GetProcAddress((HINSTANCE)pLib, pSymbolName); } -void dlFreeLibrary(DLLib* libHandle) + +void dlFreeLibrary(DLLib* pLib) { - FreeLibrary((HINSTANCE)libHandle); + FreeLibrary((HINSTANCE)pLib); } + +int dlGetLibraryPath(DLLib* pLib, char* sOut, int bufSize) +{ + return GetModuleFileNameA((HMODULE)pLib, sOut, bufSize)+1; /* strlen + '\0' */ +} +