今天在做Inventor二次开发的时候,在一个很简单的问题上卡了很久——自己的电脑上可以启动插件而虚拟机上不行,其实是我自己的电脑上装了7Zip软件,已经将zlibwapi.dll注册到了windows中,而虚拟机是没有装这款压缩软件的,因此zlibwapi.dll缺失无法启动。我想当然的以为动态链接库缺失依赖是主DLL是可以启动的,刚好Inventor又是一个非注册的插件启动形式,你加载插件,它如果发现有问题马上又卸载了,并不会给你任何日志去供你分析。
最后还是在同事的帮助下,用VisualStudio的命令行输入命令插件DLL依赖:
dumpbin /dependents E:\git\MyProject\MyDllName.dll
回车后能得到如图清晰的结果:
少了哪些DLL依赖项自己去一个个补充就好了,希望我未来多用诊查手段,这种愚蠢问题不要再犯。