Visual C++6 在“解决方案”目录而不是输出目录中寻找文本文件

Posted

技术标签:

【中文标题】Visual C++6 在“解决方案”目录而不是输出目录中寻找文本文件【英文标题】:Visual C++6 looking for text file in the "solution" directory rather than output directory 【发布时间】:2016-06-01 19:04:20 【问题描述】:

我有一个 VC++6 项目,我有以下代码 sn-p:

string s;
int i=0, indx;
ifstream myReadFile;

myReadFile.open("chanmap.txt");

由于某种原因,当我运行程序时,它正在“解决方案”/root/dsw 目录而不是输出目录(即 Debug 文件夹)中寻找文本文件,这是一个遗留项目,所以我在确保某些设置可能在这里和那里受到破坏。但是这个IDE几乎和我一样古老,而且非常陌生。任何帮助表示赞赏。

【问题讨论】:

MSVS 默认将工作目录设置为项目和源代码文件所在目录。 什么时候在调试器中运行?您需要在解决方案的选项中设置工作目录。 @RetiredNinja 是的,当我调试时。但这也适用于发布版本吗? @audiFanatic -- 您可以在 Visual Studio 中调试发布版本,也可以在 Visual Studio 之外运行调试版本,因此您的问题不清楚。当您说“发布版本”时,您是指在 Visual Studio 之外运行它吗? @PaulMcKenzie 正确 【参考方案1】:

对于调试和发布项目,在项目设置中指定相同的路径调试 -> 工作目录

除此之外,请确保您从 Windows 资源管理器(或来自同一路径的命令 propmpt)运行程序。您可能需要创建一个快捷方式,在其中指定目录

由于您使用的是 Windows,因此您还可以在程序中使用 SetCurrentDirectory。

【讨论】:

我用的是VC++6,不太一样。但是工作目录有一个位置。不幸的是,不确定我是否可以使用路径宏。 呃,我之前在这里得到了帮助。不是我首选的 IDE。不幸的是,这是强加给我的。 我无权访问 VC6。我无法显示屏幕截图,也无法显示设置当前目录的说明。您找不到如何为当前项目设置“当前工作目录”吗?这有多难?

以上是关于Visual C++6 在“解决方案”目录而不是输出目录中寻找文本文件的主要内容,如果未能解决你的问题,请参考以下文章

使用 Microsoft Visual C++ 6 的 FTP 事务

如何在 Visual Studio 2015 中禁用 C# 6 支持?

以任何方式将一批库和目录路径包含在“包含其他目录”Visual C ++中

在 Visual C++ 6.0 MFC 中,CString 是不是可以像简单类型而不是类一样被安全地对待?

C++ 'true' 和 'false' 关键字在 Visual C++ 6.0 中突然不是真或假

Visual Studio Code - 为啥使用工作区而不是标准文件夹?