다음을 통해 공유


_getdcwd, _wgetdcwd

지정한 드라이브의 현재 작업 디렉터리의 전체 경로를 가져옵니다.

중요

이 API는 Windows 런타임에서 실행되는 응용 프로그램에서 사용할 수 없습니다.자세한 내용은 /ZW에서 지원하지 않는 CRT 함수를 참조하십시오.

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

매개 변수

  • drive
    드라이브를 지정 하는 음수가 아닌 정수 (0 = 1 기본 드라이브 2 A = = B, 고 등).

    지정된 된 드라이브를 사용할 수 없는 경우 또는 드라이브의 종류 (예를 들어, 이동식, 고정, CD-ROM, RAM, 디스크 또는 네트워크 드라이브) 확인할 수 없는 경우, 설명 된 잘못 된 매개 변수 처리기 매개 변수 유효성 검사을 호출 됩니다.

  • buffer
    경로에 대한 저장소 위치 혹은 NULL입니다.

    NULL 을 지정하면, 이 함수에는 malloc 을 사용함으로써, 최소한의 maxlen 크기인 버퍼를 할당하고, _getdcwd 반환값은 할당된 된 버퍼에 대한 포인터입니다. free 를 호출함으로써, 버터를 해제할 수 있고 포인터를 전달합니다.

  • maxlen
    경로의 최대 길이 문자 단위로 지정 하는 0이 아닌 양의 정수: char 에대한 _getdcwd 와 wchar_t 에 대한 _wgetdcwd.

    maxlen 은 0보다 크지 않을 경우, 매개 변수 유효성 검사 으로 설명된 잘못된 매개변수 처리기를 호출 합니다.

반환 값

지정한 드라이브의 현재 작업 디렉터리의 전체 경로 나타내는 문자열에 대한 포인터 또는 NULL, 이는 오류로 나타냅니다.

buffer 는 NULL 로서 지정되고 maxlen 문자를 할당할 메모리가 부족할 경우, 오류는 발생하고 errno 는 ENOMEM 로 설정됩니다. Null 종결 문자를 포함 하는 경로 길이 초과 하는 경우 maxlen, 오류가 발생하고 errno 는 ERANGE로 설정됩니다. 이 오류에 대한 자세한 내용은 errno, _doserrno, _sys_errlist 및 _sys_nerr 를 참조하십시오.

설명

_getdcwd 함수는 기본 드라이브의 현재 작업 디렉터리의 전체 경로 가져오고, buffer에 저장합니다. 현재 작업 디렉터리가 루트이면, 백슬래시 (\)를 사용하여 문자열을 종료합니다. 현재 작업 디렉터리가 루트 이외의 디렉터리이면, 디렉터리 이름 및 백슬래시를 사용하지 않고 문자열이 종료됩니다.

_wgetdcwd 와이드 문자 버전 _getdcwd, 및 buffer 매개 변수와 반환 값은 와이드 문자 문자열입니다. 그렇지 않으면 _wgetdcwd과 _getdcwd은 동일하게 작동합니다.

GetFullPathName 에 의존하지만 이 함수는 스레드로부터 안전합니다. 이는 자체 스레드로부터 안전 하진 않습니다. 그러나 이 두 함수를 호출 하는 GetFullPathName과 다중 스레드 응용 프로그램 스레드 안전성을 확인할 수 있습니다. 이동에 대 한 자세한 내용은 MSDN Library 를 참조하십시오. GetFullPathName

이 함수의 버전은 _nolock 접미사 동일 작동이 함수를 제외하고 다른 스레드에서 간섭에서 보호 되지 않은 스레드로부터 안전 하지 않습니다. 자세한 내용은 _getdcwd_nolock, _wgetdcwd_nolock을 참조하십시오.

_DEBUG 와 _CRTDBG_MAP_ALLOC 는 정의될 때, _getdcwd 를 호출하고 _wgetdcwd 를 _getdcwd_dbg 및 _wgetdcwd_dbg 라 불리는거 에의해 대체 됩니다. 그 결과 메모리 할당을 디버깅할 수 있도록 합니다. 자세한 내용은_getdcwd_dbg, _wgetdcwd_dbg을 참조하십시오.

제네릭 텍스트 라우팅 매핑

Tchar.h 루틴

_UNICODE 및 _MBCS 정의되지 않음

_MBCS 정의됨

_UNICODE 정의됨

_tgetdcwd

_getdcwd

_getdcwd

_wgetdcwd

요구 사항

루틴

필수 헤더

_getdcwd

<direct.h>

_wgetdcwd

<direct.h> 또는 <wchar.h>

호환성에 대한 자세한 내용은 호환성을 참조하십시오.

예제

_getdrive의 예제를 참조하십시오.

해당 .NET Framework 항목

System::Environment::CurrentDirectory

참고 항목

참조

디렉터리 제어

_chdir, _wchdir

_getcwd, _wgetcwd

_getdrive

_mkdir, _wmkdir

_rmdir, _wrmdir