我写了一个 COM dll,并希望使用
regsvr32 myComdll.dll
我收到一个错误:
DllRegisterServer failed, Return code was: 0xc0000005
我想调试我的 DllRegsiterServer 函数,但我不知道如何设置 Visual Studio 2008 以在调试模式下运行 regsvr32...
谢谢
罗伊
我写了一个 COM dll,并希望使用
regsvr32 myComdll.dll
我收到一个错误:
DllRegisterServer failed, Return code was: 0xc0000005
我想调试我的 DllRegsiterServer 函数,但我不知道如何设置 Visual Studio 2008 以在调试模式下运行 regsvr32...
谢谢
罗伊
1 将 regsvr32 设置为 exe 启动
2 将 Visual Studio 中的参数设置为调试 dll 的路径
3 在寄存器函数中设置断点。
4 开始调试
项目 + 属性,调试,设置命令 = Regsvr32.exe $(TargetPath)。在 DllRegisterServer 函数上设置断点或使用 Debug + Exceptions,检查 Win32 Exceptions。按 F5 开始。
其他答案很好,但总是可靠的Sleep()
- 您插入Sleep()
call 作为感兴趣函数的第一个语句(DllRegisterServer()
在您的情况下)并重新编译项目。然后在下一条语句中设置断点,运行 regsvr32 并将调试器附加到它。regsvr32 调用该函数并在Sleep()
返回后停止执行下一条语句。
无需设置,但需要重新编译。