【问题标题】:Find out Current Directory during Visual Studio C++ Debug session在 Visual Studio C++ 调试会话期间找出当前目录
【发布时间】:2016-03-07 18:51:46
【问题描述】:

我正在 Visual Studio 2015 上调试 C++ 本机应用程序。
在断点处停止后,我想知道当前目录。 (它可能在执行期间在该断点处停止之前发生了变化)。

在.NET 调试it is possible through the immediate window。这在调试 C++ 本机应用程序时不起作用。

在调试 C++ 原生应用程序时,有没有办法可以找到当前目录?

为了清楚起见 - 我不想再次更改和构建我的代码。我想在调试器中(监视窗口、命令/立即窗口等)找到它

【问题讨论】:

  • 观察窗口中的$env pseudovariable 可能会有所帮助,尽管这不是直接的答案。
  • @bogdan 从$env 中提供的环境变量的简短传递中,我找不到任何显示当前目录的内容。
  • 它通常在开头包含=C:= 之类的条目,其中包含模拟的每个驱动器当前目录。不幸的是,这只能在控制台应用程序中可靠地工作。这些条目在非控制台 Windows 应用程序中可能略有不同(或根本不存在),具体取决于应用程序正在执行的其他操作。这就是为什么我不认为这是一个答案,但我认为值得一提。为此添加一个伪变量对于 VS 团队来说可能是一个不错的 suggestion
  • @bogdan 好主意。我添加了new suggestion

标签: c++ visual-studio debugging visual-studio-2015 immediate-window


【解决方案1】:

在 Visual Studio 2015 中有一个“C# 交互式”窗口。 您可以在调试 Native 项目时使用您提供的 .NET 解决方案中的 C# 命令来获取当前目录。 查看 -> 其他窗口 -> C# 交互

如果您没有看到此选项,您可能需要使用 C#/.NET 组件重新安装 VS2015。 (我在安装过程中选择了所有与 C# 相关的组件。)

【讨论】:

  • 对我来说,这可以打印一个工作目录,但它实际上不是进程的工作目录。
猜你喜欢
  • 1970-01-01
  • 2019-12-31
  • 2013-03-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多