我正在调试test.exe,它读取一个文件"data.txt",该文件与exe的目录位于同一目录中.直接运行时程序运行正常.但是当在winDBG下调试时,代码中的CreateFile WinAPI失败,错误#2(无法找到文件).在使用VS进行调试时,我看到了一个关于类似问题的相关线程 - 解决方案是将数据文件与源/头一起放置.这解决了VS问题,但没有帮助解决这个WinDBG问题.
以前有人遇到过这个问题吗?如果您了解解决方案,请通知我.
如果使用相对文件路径,则进程的工作目录将影响它们转换为绝对路径的方式.
在Windows资源管理器中启动test.exe时,其工作目录是包含它的文件夹.在这种情况下,可以正确找到同一文件夹中的数据文件.
当您使用WinDbg启动test.exe时,除非您明确将工作目录设置为所需的工作目录,否则WinDbg将使用自己的文件夹.毫无疑问,这会导致你遇到的问题.
http://en.wikipedia.org/wiki/Working_directory