Woher kriege ich den Applikationspfad?

jokey2

Erfahrenes Mitglied
In einer Applikation möchte ich eine Konfigurationsdatei laden, die im gleichen Verzeichnis wie die Applikation liegen soll. Wie finde ich jetzt innerhalb der Anwendung heraus, aus welchem Verzeichnis die zugehörige EXE gestartet wurde?
 
Code:
CString getFilePath()
{
	char buffer[_MAX_PATH];
	::GetModuleFileName (NULL, buffer, _MAX_PATH);
	return CString(buffer).Left(CString(buffer).ReverseFind('\\')+1);
}

Kriegs hierbei den Pfad (ohne die exe) wieder.

Lukas
 
Danke! ::GetModuleFileName war genau das, was ich gesucht habe.
Btw: wozu ist denn das CWinApp - Member m_lpCmdLine? Bei mir ist es nämlich immer leer. Dem Namen nach würde ich da eben die komplette Kommandozeile erwarten, mit Applikationspfad un allen Parametern (argv eben).
 
Ist die Kommandozeile drin, allerdings wird die erst direkt vor CMeineApp::InitInstance gesetzt (oder da in der Nähe). Im Constructor wird die vermutlich leer sein.
 
m_lpCmdLine ist aber kein Array sondern ein CString. Und da stehen nur die Parameter drin, wenn welche angegeben wurden.
 
Zurück