Lists all available NxCoreAPI.dll files on this computer
#define cszNxCoreListAPIDLLs "sNxCoreListAPIDLLs"
typedef int (__stdcall *NxCoreListAPIDLLs) (unsigned int controlFlags, NxCoreCallbackAPIList stdcallback, void* pUserParam);
int ListAPIDLLs(
unsigned int controlFlags,
NxCoreCallbackAPIList stdcallbacklist,
void* pYourParam
);
Here's an example of finding and printing all NxCoreAPI.dll files on this machine
#define _CRT_SECURE_NO_WARNINGS
#include <windows.h>
#include <stdio.h>
#include <NxCoreAPI.h>
#include <NxCoreAPI_class.h>
NxCoreClass nxCoreClass;
struct MyDLLList
{
static const int numDLLs = 512;
NxCoreAPIDLLFile dllFiles[numDLLs];
unsigned int count;
};
int __stdcall listDLL(void* pUserParam, const NxCoreAPIDLLFile* pNxDF)
{
MyDLLList* dllList = (MyDLLList*) pUserParam;
if (dllList->count < dllList->numDLLs)
{
memcpy(&dllList->dllFiles[dllList->count++], pNxDF, sizeof(*pNxDF));
}
return 0;
}
void dumpDLLs()
{
MyDLLList dllList;
dllList.count = 0;
nxCoreClass.ListAPIDLLs(0, listDLL, &dllList);
for (unsigned int i = 0; i < dllList.count; i++)
{
printf("%s\n", dllList.dllFiles[i].PathnameStrZ);
}
}