C++: Arbeitsverzeichnis zur Laufzeit ermitteln

Nukleo

Mitglied
Hallo,

wie kann ich bei einer ganz normalen Win32-Konsolenapplikation zur Laufzeit das Arbeitsverzeichnis der Anwendung ermitteln?

Herzlichen Dank
Nukleo
 
Hi.

Aus der MSDN.
Win32 example 3: using directory handling functions

This sample prints out the current working directory using the GetCurrentDirectory() Win32 API function.

Code:
#include <windows.h>
#include <stdio.h>

void main()
{
    DWORD   cchCurDir;
    LPTSTR  lpszCurDir;
    TCHAR   tchBuffer[MAX_PATH + 1];
    DWORD   nSize;


    lpszCurDir = tchBuffer;
    cchCurDir = MAX_PATH;

    nSize = GetCurrentDirectory(cchCurDir, lpszCurDir);

    printf("Current Directory is : %s\n", lpszCurDir);
}
 
GetCurrentDirectory ist das Arbeitsverzeichnis, das nicht immer das Verzeichnis ist, in dem dein Programm liegt. Wenn du das haben willst, empfehle ich unter Windows die Funktion GetModuleFileName. Einfach vom Ergebnis hinten den Dateinamen rauspfriemeln und fertig.
 
Zurück