visual-c++ - 调试 DLL 加载失败,找不到指定的程序错误
问题描述
需要一些提示来调试 DLL。我有一些遗留项目,可以使用v141_xp
Windows 10 上的工具集构建。
它有几个自己的依赖项,例如:
netsnmp.li
netsnmpagent.lib
netsnmpmibs.lib
netsnmptrapd.lib
netsnmphelpers.lib
Ws2_32.lib
snmpapi.lib
mgmtapi.lib
winmm.lib
并继承:
kernel32.lib
user32.lib
gdi32.lib
winspool.lib
comdlg32.lib
advapi32.lib
shell32.lib
ole32.lib
oleaut32.lib
uuid.lib
odbc32.lib
odbccp32.lib
net-snmp-5.4.4 我从源代码构建并安装在C:\usr
. 编译和链接似乎是成功的。
但是,尝试注册生成的 DLL 表明它毕竟不是那么成功。
regsvr32 C:\Users\kqmw64\ctt_tools\toolsprojects\ToolsObjects\Debug\networkmanager.dll
结果:
The specified procedure could not be found
消息。
我已经使用http://www.nirsoft.net/utils/dll_export_viewer.html检查了导出表
DllRegisterServer 0x6416c8c0 0x0006c8c0 3 (0x3) networkmanager.dll C:\Users\kqmw64\ctt_tools\toolsprojects\ToolsObjects\Debug\networkmanager.dll Exported Function
添加MessageBox(0, "Dll Register Server", "caption", MB_OK);
到它,但显然没有出现消息框。
非常感谢一些提示如何解决这个问题。
解决方案
推荐阅读
- javascript - 使用 javascript 的幻灯片放映会导致 Highcharts 大小发生变化。我可以知道为什么吗?
- python - TypeError:无法连接“str”和“instancemethod”对象
- r - 强度栅格到 Kappa
- react-native - Android和iOS中的按钮不在同一个地方
- hive - 为什么主表和临时表给出不同的结果?
- ruby-on-rails - 样式 echarts - 无法修改标题颜色
- c# - 如何在 ASP.NET 中获取 Windows 用户名?
- mule - Mule - 'map' 运算符的类型不匹配
- ios - 如何在swift4中清除导航栏颜色?
- java - 如何使用标志变量让用户结束他的输入