WinDbg调试程序时无法读取本地文件

时间:2014-01-03 01:51:55

标签: debugging windbg

我正在调试test.exe,它读取一个文件“data.txt”,该文件与exe的目录位于同一目录中。直接运行时程序运行正常。但是当在winDBG下调试时,代码中的CreateFile WinAPI失败,错误#2(无法找到文件)。在使用VS进行调试时,我看到了一个关于类似问题的相关线程 - 解决方案是将数据文件与源/头一起放置。这解决了VS问题,但没有帮助解决这个WinDBG问题。

以前有人遇到过这个问题吗?如果您了解解决方案,请通知我。

1 个答案:

答案 0 :(得分:5)

如果使用相对文件路径,则进程的工作目录将影响它们转换为绝对路径的方式。

在Windows资源管理器中启动test.exe时,其工作目录是包含它的文件夹。在这种情况下,可以正确找到同一文件夹中的数据文件。

当您使用WinDbg启动test.exe时,除非您明确将工作目录设置为您想要的目录,否则WinDbg将使用自己的文件夹。毫无疑问,这会导致你遇到的问题。

http://en.wikipedia.org/wiki/Working_directory