我有一个Visual Studio 2015 C ++项目,它不能在WinXP下运行,因为函数getTickCount64()在某处被调用(只有Vista和更高版本)。该函数位于外部库Kernel32.dll中,因此我无法将其声明为弃用以获取编译器警告。
我多次检查过,而且我自己没有调用这个函数,它必须在我使用的第三方库中。
如何确定调用函数的位置?
答案 0 :(得分:0)
使用函数断点(Debug-> New Breakpoint-> Function断点),然后使用调用堆栈查看调用它的位置。
答案 1 :(得分:0)
您将无法在运行时使用调试器找到罪魁祸首,因为您的程序将无法在运行时加载。您必须静态搜索应用程序使用的每个第三方库,直到找到静态调用该功能的那个库。如果您没有库的源代码,您至少可以搜索目标文件或导入链接到应用程序的库,查找对该函数的任何引用。