使用以下代码时,即使将TheFST.dll与调试信息(/DEBUG)链接在一起,似乎也无法在函数setSecurityRetriever的断点处停止。

调用GetModuleHandle时,VS是否无法加载.pdb吗?如果正常,如何更改行为以强制VS加载.pdb文件?

const string bondDataRetrieveDLLName("TheFST.dll");
HMODULE hMod = GetModuleHandle(bondDataRetrieveDLLName.c_str());
if(hMod)
{
    SecurityData bdrs = reinterpret_cast<SecurityData>(GetProcAddress(hMod, "setSecurityRetriever"));
    if(bdrs)
        bdrs(callback);
}

最佳答案

如前所述,您可以使用DebugBreak()以编程方式设置断点。

如果正在使用MSVC,也可以将__asm int 3放在要断点的位置。
它将在该行中完全中断。只要记住以后再将其删除即可。

10-06 00:40