Möglicherweise möchten Sie auf Einstellungsdateien im selben Verzeichnis wie die ausführbare Datei zugreifen. In solchen Fällen möchte ich die gängigen Schreibstile zusammenfassen.
Wir warten auf Informationen zu effizienteren Methoden, anderen Sprachen usw.
Für Windows 7 oder höher.
C/C++
getModulePath.c
#include <windows.h>
#include <string.h>
#define BUF_SIZE 1024
TCHAR name[BUF_SIZE];
TCHAR* lastdelim;
GetModuleFileName(NULL, name, BUF_SIZE);
lastdelim = _tcsrchr(name, '\\');
*lastdelim = '\0';
C# / .NET
getModulePath.cs
using System;
using System.Reflection;
using System.IO;
Assembly assem = Assembly.GetExecutingAssembly();
String path = Path.GetDirectoryName(assem.Location);
python
getModulePath.py
os.path.dirname(os.path.abspath(__file__))