Visual Studio 文件名

有线365

我认为这是一个简单的问题,但我不知道该怎么做。我有一个正在 Windows 上编译和运行的 C++ 项目,但我遇到了我正在使用的 NiTE2 库的问题。当 NiTE2 调用设置所需的特定函数时,它会搜索位于“./NiTE2/s.dat”的“s.dat”文件。问题是当我在 Visual Studio 环境中运行它时,它会尝试搜索路径“.\NiTE2/s.dat”。这不是一个错字,它混合了斜线。可以理解的是,该程序找不到必要的文件。但是,当我在 Git Bash 下运行我的程序时,它执行得很好。

使用 Git Bash 可以工作,但它使调试变得非常困难,有谁知道如何或是否可以让 Visual Studio 运行时环境使用正斜杠而不是 Windows 默认的反斜杠作为路径?定义在何处找到“s.dat”的路径隐藏在我无法编辑的专有代码中,因此该解决方案已失效。

旁注:如果有帮助的话,我正在运行 Windows 10。我正在尝试使用 VSCode 进行 bash 调试,但这目前也是一场艰苦的战斗。

麦克斯蒂夫

我认为 Visual Studio 正在选择一个意外的工作目录,如果您编辑工作目录,它应该可以正常工作。

为了解决这个问题,我使用了系统内部的procmon工具。当我运行我的应用程序时,会显示尝试的文件的完整路径。

Visual Studio 在奇怪的工作目录(源位置)中启动应用程序,这可能是在调试器中运行时丢失文件的主要原因。

您可以通过转到解决方案资源管理器中的 .exe 位置,右键单击以编辑属性,然后选择“调试”配置属性来更改调试器起始目录。

在这里您可以设置命令参数 - 作为文本发送到程序中,以及工作目录。

Windows 有 2 个路径解析器。本机 NT 路径解析器不接受 /,但有一个可以激活的 DOS 解析器。DOS 解析器的不同之处在于:-

  • 不关心 '\' 或 '/'
  • 允许相对搜索 c:\program files\myApp\..\yourapp\prog.exe
  • 不关心连续的 '\' 或 '//'
  • 关于文件末尾的空格有一些奇怪的规则。(DOS 解析器不能打开这样的)。

打开带有“\?”的文件时可以禁用 DOS 解析器 附加到路径并使用函数的 unicode 变体。

wfopen( L"\\\\?\\c:\\program files\\yourapp\\prog.exe", L"rb" );

所以在正常操作中,'\' 和 '/' 是等价的,除非 DOS 解析器被禁用。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Visual Studio代码-文件名颜色

如何在Visual Studio中搜索文件名?

Visual Studio代码,如何复制文件名

如何在Visual Studio Code中重构文件名?

C# Visual Studio 用户输入的文件路径和文件名

Visual Studio调用堆栈窗口不显示文件名

如何在Visual Studio Code中搜索特定的文件名?

Visual Studio中的“引用指针”错误未按发生的文件名显示

为调试会话分配可执行文件名(Visual Studio 2019)

使用 Visual Studio PDB 确定函数的源代码文件名和行

获取Visual Studio项目名称(或exe文件名)以在C ++程序中使用它

Visual Studio网站“:构建(Web):集合中已存在的文件名”

编译标志,用于处理Visual Studio中I / O操作中的长路径/文件名

Visual Studio Code 中文件名旁边的标记数字是什么

在C ++ Visual Studio中使用for循环写入不同的文件名

在 Visual Studio 2019 中保存时 ReadDirectoryChangesW 文件名出现问题

使用Visual Studio进行Git-重复的文件夹/文件名只有不同的大小写?

当我更改文件名时,Visual Studio 2017会覆盖文件,是否可以还原该更改?

如何在Visual Studio中基于文件名以编程方式对C#.cs文件进行更改?

复制Visual Studio的文件扩展名

Android Studio文件名以蓝色显示

我可以在iterm2中单击文件名和行号在OS X中以正确的行号在Visual Studio Code中打开该文件

有没有一种方法可以使Visual Studio for Mac OS识别文件名的大小写?

在带有Web Essentials的Visual Studio 2013中,是否可以将使用“在base 64中编码图像”编码的图像还原为文件名?

如何命名数据库的文件名并在Visual Studio 2015数据库项目中设置其位置?

如何为.cshtml文件创建Visual Studio扩展名?

在Android Studio中,文件名旁边的勾号

Visual Studio .natvis文件矩阵

Visual Studio在线销毁文件