WinL 32位上的LoadLibrary失败,在Win XP 32位上成功

0 c++ dll loadlibrary

我正在尝试将第三方dll(即我没有源代码)加载到我的应用程序中.在Windows XP 32位系统上,它加载正常,但在Windows 7系统上无法加载,引用来自GetLastError()的错误#998

我使用dll导出查看器来查看dll的导入和导出符号,并观察到导入表中列出的除3个dll之外的所有dll都来自此第三方供应商.那些没有的是:
kernel32.dll
mingwm10.dll
msvcrt.dll

这是我用来导入的代码:

SetDllDirectory(L"c:\\dlls");
HMODULE tempDLL = LoadLibrary(L"mydll.dll");
DWORD err = GetLastError();
Run Code Online (Sandbox Code Playgroud)

有关如何进行调试的任何提示,好吗?

编辑:感谢大家的回答,这是我到目前为止所发现的:
a)应用工具包包没有证明是有用的(见下文)
b)同事A可以获得加载他的胜利的DLL 7机器和同事B不能,所以它是零星的东西
c)作为管理员运行没有改变任何东西

Kir*_*sky 5

尝试使用Microsoft应用程序兼容性工具包(它是一个免费的工具集)来找出它在Windows 7上失败的原因.希望这会有所帮助,它看起来像兼容性问题.