文件修改或文件打开时的断点

时间:2010-12-09 16:35:36

标签: c++ visual-studio debugging visual-studio-2005 filesystems

我想为特定文件或打开特定文件设置文件修改的断点。这是我们的软件在遗留代码的部分期间打开和修改的文件。我不确定如何解决这个问题。我想到的一种方法是找到我们打开文件的所有位置,打破所有这些位置,并检查文件路径以确定它是否是我们关注的路径。我想的另一种方法是尝试在路径与我关注的路径匹配时在文件系统打开代码中设置断点(可能更难,因为我目前在Windows下运行。这可能是Linux下的一个选项但是Visual Studio 2005解决方案是理想的,Linux解决方案可能很有用。)

目前,我正在使用Visual Studio 2005进行C ++中的软件项目。我无法在网上找到任何关于此作为选项或人们想采取的方法。

通常情况下,我会说我应该了解这个文件的打开位置。不幸的是,这部分代码很难理解并且会被重新考虑,但是在不久的将来,这个功能对我有帮助。

非常感谢您阅读我的问题,

-Brian J. Stinar -

1 个答案:

答案 0 :(得分:1)

将条件断点放入kernel32.CreateFileW并检查文件名 然后你将得到文件句柄,所以你可以把条件断点放到kernel32.CreateFileW并检查文件句柄。

你也可以挂钩CreateFileW并在其中调用__debugbreak()。