Freigeben über


_getdcwd, _wgetdcwd

Ruft den vollständigen Pfad des aktuellen Arbeitsverzeichnis auf dem angegebenen Laufwerk ab.

Wichtiger HinweisWichtig

Diese API kann nicht in den Anwendungen verwendet werden, die in der Windows Runtime ausführen.Weitere Informationen finden Sie unter CRT-Funktionen unterstützt nicht mit /ZW.

char *_getdcwd( int drive, char *buffer, int maxlen ); wchar_t *_wgetdcwd( int drive, wchar_t *buffer, int maxlen );

Parameter

  • drive
    Eine nicht negative ganze Zahl, die das Laufwerk angibt (0 = Standardlaufwerk, 1 = A, 2 = B, usw.).

    Wenn das angegebene Laufwerk nicht verfügbar ist oder die Antriebsart (beispielsweise, Wechsel, fest, CD-ROM, RAM-Datenträger oder Netzlaufwerk) nicht bestimmt werden kann, wird der UngültigParameterhandler, der in Parametervalidierung beschrieben wird, aufgerufen.

  • buffer
    Speicherort für den Pfad oder NULL.

    Wenn NULL angegeben wird, ordnet diese Funktion ein Puffer von mindestens maxlen Größe zu, indem sie malloc verwendet, und der Rückgabewert von _getdcwd ist ein Zeiger auf den zugeordneten Puffer.Der Puffer können freigegeben werden, indem free aufruft und es der Zeiger übergibt.

  • maxlen
    Eine positive ganze Zahl ungleich 0 (null), die die maximale Länge des Pfads angibt, in Zeichen: char für _getdcwd und wchar_t für _wgetdcwd.

    Wenn maxlen nicht größer als ist, wird der UngültigParameterhandler, der in Parametervalidierung beschrieben wird, aufgerufen.

Rückgabewert

Zeiger auf eine Zeichenfolge, die den vollständigen Pfad des aktuellen Arbeitsverzeichnis auf dem angegebenen Laufwerk darstellt oder NULL, das einen Fehler angibt.

Wenn buffer angegeben wird, da NULL und der nicht genügend Arbeitsspeicher vorhanden ist, mit der maxlen Zeichen zu, tritt ein Fehler auf und errno wird zu ENOMEM festgelegt.Wenn die Länge des Pfades, der das NULL enthält, maxlen überschreitet, tritt ein Fehler auf und errno wird zu ERANGE festgelegt.Weitere Informationen zu diesen Fehlercodes, finden Sie unter errno, _doserrno, _sys_errlist und _sys_nerr.

Hinweise

Die _getdcwd-Funktion ruft den vollständigen Pfad des aktuellen Arbeitsverzeichnis auf dem angegebenen Laufwerk ab und speichert ihn bei buffer.Wenn das aktuelle Arbeitsverzeichnis zum Stamm festgelegt ist, beendet die Zeichenfolge mit einem umgekehrten Schrägstrich (\).Wenn das aktuelle Arbeitsverzeichnis zu einem Verzeichnis als dem Stamm festgelegt ist, beendet die Zeichenfolge mit dem Namen des Verzeichnisses und nicht mit einem umgekehrten Schrägstrich.

_wgetdcwd ist eine Breitzeichen-Version von _getdcwd, und sein buffer-Parameter und -Rückgabewert sind Breitzeichen-Zeichenfolgen.Andernfalls verhalten sich _wgetdcwd und _getdcwd identisch.

Diese Funktion ist threadsicher, obwohl sie von GetFullPathName abhängt, die nicht threadsicher ist.Sie können jedoch Threadsicherheit verstoßen, wenn Multithreadanwendung diese Funktion und GetFullPathName aufruft.Weitere Informationen finden Sie auf der und MSDN Library suchen Sie dann für GetFullPathName.

Die Version dieser Funktion, die das _nolock Suffix verhält identisch mit dieser Funktion verfügen, allerdings ist nicht threadsicher und wird nicht aus der Fehler durch andere Threads geschützt.Weitere Informationen finden Sie unter _getdcwd_nolock, _wgetdcwd_nolock.

Wenn _DEBUG und _CRTDBG_MAP_ALLOC definiert sind, werden Aufrufe _getdcwd und _wgetdcwd durch Aufrufe _getdcwd_dbg und zu _wgetdcwd_dbg ersetzt, damit Sie Speicherbelegungen debuggen können.Weitere Informationen finden Sie unter _getdcwd_dbg, _wgetdcwd_dbg .

Zuordnung generische Textroutinen

Tchar.h-Routine

_UNICODE und _MBCS nicht definiert

_MBCS definiert

_UNICODE definiert

_tgetdcwd

_getdcwd

_getdcwd

_wgetdcwd

Anforderungen

Routine

Erforderlicher Header

_getdcwd

<direct.h>

_wgetdcwd

<direct.h> oder <wchar.h>

Weitere Kompatibilitätsinformation finden Sie unter Kompatibilität.

Beispiel

Siehe das Beispiel in _getdrive.

.NET Framework-Entsprechung

System::Environment::CurrentDirectory

Siehe auch

Referenz

Verzeichnis-Steuerelement

_chdir, _wchdir

_getcwd, _wgetcwd

_getdrive

_mkdir, _wmkdir

_rmdir, _wrmdir