一:现象:
使用visual studio 2022软件编译项目时,完全没有问题,没有报错,且XXX.dl文件生成。
运行.exe文件也没有问题,但在操作过程中,报错:
System.DllNotFoundException:“Unable to load DLL ‘my.dll‘ or one of its dependencies: 找不到指定的模块。
二:原因及解决办法
原因有两种:
1.Unable to load DLL 'my.dll' (下载失败)
生成的my.dll文件不在.exe所在的目录下,将my.dll文件放到.exe文件下即可。
2.one of its dependencies(缺少依赖)
dll文件是Dynamic Link Library(动态链接库)文件的缩写。
项目生成的DLL文件出了自己外,还需要依赖其他库。
解决过程:
1.使用 visual studio 2022 自带的 Developer Command Prompt for VS 2022 查询项目生成的.dll文件的依赖dll文件。
1.打开后,输入命令:
dumpbin /dependents C:\xx\xx\my.dll
结果:
File Type: DLL
Image has the following dependencies:
vxlapi.dll
KERNEL32.dll
USER32.dll
ADVAPI32.dll
vbac.dll
VCRUNTIME140D.dll
ucrtbased.dll
在生成的my.dll同文件夹下添加这些dll文件。没有可以在网上搜索文件下载。