C++获取系统的文件路径

C++ getting the path of a file for System

本文关键字:文件 路径 系统 获取 C++      更新时间:2023-10-16

我有一个JavaScript项目,它需要与节点一起运行并输出到一个文件中,所以我决定使用C++,我需要使用System命令。

我正在使用Visual Studio BTW

我需要链接到.exe中的另一个文件路径,以便系统命令可以使用它。例如:如果我有一个包含Generator/main.js的exe,我如何获得它的路径,以便exe文件是可移植的。如何返回包含文件的路径?这可能吗?

#include "stdafx.h"
#include <iostream>
using namespace std;
int main()
{
    cout << "Generator!";
    cin.get();
    // This needs to be run from CMD, how do I link to Generator in the project folder?
    system("node Generator/main.js > %userprofile%/Desktop/Gen.txt");
    return 0;
}

编辑如何将文件从exe复制到文件中,如桌面?

尽管你的问题有点自相矛盾,但听起来你只是在与可执行文件相同的目录中寻找一些东西,而不是存储在可执行文件本身中。为此,GetModuleFileName可以提供帮助。

总体思路如下:

char buffer[MAX_PATH];
GetModuleFileName(NULL, buffer, sizeof(buffer));

如果您确实在可执行文件本身中存储了一些内容,那么您可以使用资源函数(FindResourceLoadResourceLockResource等)来访问这些数据。