程序找不到显式链接的DLL

时间:2018-06-29 09:21:13

标签: c dll msbuild

我正在尝试修改明确链接到DLL的C程序,以连接到放大器的驱动程序。它带有DLL文件,C源代码和预编译的可执行文件。该可执行文件运行良好,但是当我使用VS 2017开发人员命令提示符重新生成该可执行文件时,找不到该库(错误代码126)。我确认路径正确,DLL是程序正在寻找它的地方。

这是加载DLL的程序的一部分:

TCHAR Path[ MAX_PATH ];
...
TCHAR Hardcoded[255] = _T("C:\\Windows\\System32\\TMSiSDK.dll");
Path[0] = 0 ; // When debugging, use the locally build lib
lstrcat(Path, Hardcoded);
...
LibHandle = LoadLibrary(Path); 

这是我在VS 2017的开发人员命令提示符中用来构建它的命令:

cl sampler.c

关于我在做什么错的任何想法?

这是我第一次使用带有DLL-s的程序,而且我也不习惯在Windows下开发,所以请原谅。

1 个答案:

答案 0 :(得分:0)

同时解决了问题:由于某种原因,VS 2017的默认开发人员命令提示符是我的64位系统上32位的开发者命令提示符,这就是为什么DLL无法识别为有效DLL的原因。