WIN32: osdFindSymbol() use psapi
This commit is contained in:
@@ -5,10 +5,15 @@
|
||||
\*************************************************************************/
|
||||
/* osi/os/WIN32/osdFindSymbol.c */
|
||||
|
||||
/* avoid need to link against psapi.dll
|
||||
* requires windows 7 or later
|
||||
/* Avoid need to link against psapi.dll. requires windows 7 or later.
|
||||
* MinGW doesn't provide wrappers until 6.0, so fallback to psapi.dll
|
||||
*/
|
||||
#define NTDDI_VERSION NTDDI_WIN7
|
||||
#ifdef _MSC_VER
|
||||
# define NTDDI_VERSION NTDDI_WIN7
|
||||
# define epicsEnumProcessModules K32EnumProcessModules
|
||||
#else
|
||||
# define epicsEnumProcessModules EnumProcessModules
|
||||
#endif
|
||||
|
||||
#include <windows.h>
|
||||
#include <psapi.h>
|
||||
@@ -72,7 +77,7 @@ epicsShareFunc void * epicsShareAPI epicsFindSymbol(const char *name)
|
||||
/* As a handle returned by LoadLibrary() isn't available to us,
|
||||
* try all loaded modules in arbitrary order.
|
||||
*/
|
||||
if(K32EnumProcessModules(GetCurrentProcess(), dlls, sizeof(dlls), &ndlls)) {
|
||||
if(epicsEnumProcessModules(GetCurrentProcess(), dlls, sizeof(dlls), &ndlls)) {
|
||||
for(i=0; !ret && i<ndlls; i++) {
|
||||
ret = GetProcAddress(dlls[i], name);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user