C ++运行可执行文件的位置的目录路径?

时间:2014-08-06 18:16:39

标签: c++ windows

我一直在尝试获取正在执行可执行文件的目录路径,而不是exe文件存储的位置。在Windows中执行此操作 编辑**这是一个更多的如果您在程序首次启动时获取当前目录 不是执行应用程序的完整路径:*查看示例

示例

主要文件夹>>文件夹1>>文件夹2 .exe文件存储在主文件夹中。 .exe文件在文件夹2中运行程序。我想知道文件夹2路径(文件夹2是使用我无法预测的随机名称创建的)

注意我在文件夹2中有一个创建文件的文件。 IM目前使用GetModuleFileName(NULL, buff, MAX_PATH);,但我知道错了。

有什么想法吗?先感谢您。

目前我

#include <iostream>
#include <cstdint>
#include <stdio.h>
#include <stdlib.h>
#include <string>
#include <fstream>
#include <cctype>
#include <sstream>
#include <windows.h>
#include <vector>

using namespace std;

char fullexe[MAX_PATH]; 
string EPath;

string ExePat()
{
    GetModuleFileName(NULL, buff, MAX_PATH);                    
    string::size_type pos = string(buff).find_last_of("\\/");
    EPath = string(buff).substr(0, pos);
    Return EPath;           
}

void FileCreate() 
{
    ofstream cfile;
    cfile.open("newfile.");
    cfile << EPath << endl;
    cout << EPath << endl;
    cfile.close();
}

int main()
{
    FileCreate();
    system("pause");
    return 0;
}

0 个答案:

没有答案