GetDriveTypeA 函式 (fileapi.h)

判斷磁碟驅動器是否為卸載式、固定、CD-ROM、RAM 磁碟或網路驅動器機。

若要判斷磁碟驅動器是否為USB類型磁碟驅動器,請呼叫 SetupDiGetDeviceRegistryProperty 並指定 SPDRP_REMOVAL_POLICY 屬性。

語法

UINT GetDriveTypeA(
  [in, optional] LPCSTR lpRootPathName
);

參數

[in, optional] lpRootPathName

磁碟驅動器的根目錄。

需要尾端反斜杠。 如果此參數 NULL,則函式會使用目前目錄的根目錄。

傳回值

傳回值會指定磁碟驅動器的類型,可以是下列其中一個值。

傳回碼/值 描述
DRIVE_UNKNOWN
0
無法判斷磁碟驅動器類型。
DRIVE_NO_ROOT_DIR
1
根路徑無效;例如,指定的路徑上沒有掛接的磁碟區。
DRIVE_REMOVABLE
2
磁碟驅動器具有卸載式媒體;例如,磁碟驅動器、拇指磁碟驅動器或快閃卡片讀取器。
DRIVE_FIXED
3
磁碟驅動器具有固定媒體;例如,硬碟或快閃磁碟驅動器。
DRIVE_REMOTE
4
磁碟驅動器是遠端(網路)磁碟驅動器。
DRIVE_CDROM
5
磁碟驅動器是 CD-ROM 磁碟驅動器。
DRIVE_RAMDISK
6
磁碟驅動器是 RAM 磁碟。

言論

在 Windows 8 和 Windows Server 2012 中,下列技術支援此功能。

科技 支援
伺服器消息塊 (SMB) 3.0 通訊協定 不
SMB 3.0 透明故障轉移 (TFO) 不
具有向外延展檔案共用的SMB 3.0(SO) 不
叢集共用磁碟區檔案系統 (CsvFS) 是的
復原檔案系統 (ReFS) 是的
 

SMB 不支援磁碟區管理功能。

注意

fileapi.h 標頭會將 GetDriveType 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的 慣例。

要求

要求 價值
最低支援的用戶端 Windows XP [傳統型應用程式 |UWP 應用程式]
支援的最低伺服器 Windows Server 2003 [傳統型應用程式 |UWP 應用程式]
目標平臺 窗戶
標頭 fileapi.h (包括 Windows.h)
連結庫 Kernel32.lib
DLL Kernel32.dll

另請參閱

GetDiskFreeSpace

磁碟區管理功能