# include
# include
# include
/* 要獲取一些關於驅動器的屬性,可以呼叫這些函式:
1: uint getdrivetype(
lpctstr lprootpathname
);函式有乙個引數,比如"c:\\"(\是轉義字元,所以要兩個\,比如」\"「就是表示「)
函式返回值是無符號整型。
該函式獲得的是驅動器的型別:
#define drive_unknown 0 //未知的
#define drive_no_root_dir 1 //非根目錄,比如」c:\\windows"
#define drive_removable 2 //可移動的,比如軟盤
#define drive_fixed 3 //固定的驅動器即硬碟,比如"c:\\"
#define drive_remote 4 //遠端驅動器,比如通過網路共享的
#define drive_cdrom 5 //光碟
#define drive_ramdisk 6 //u盤
函式返回的值與這些巨集對應
2: bool getvolumeinformation(
lpctstr lprootpathname, //驅動器的根目錄
lptstr lpvolumenamebuffer, //字元陣列(驅動器的名稱)
dword nvolumenamesize, //陣列大小
lpdword lpvolumeserialnumber, //驅動器的序列號的位址,
//每個驅動器(卷)都有乙個序列號,一般叫做"硬碟號"
//每個驅動器都有唯一的序列號,經常會用到序列號加密
lpdword lpmaximumcomponentlength, //檔名的最大長度
lpdword lpfilesystemflags, //該變數與一些屬性做位
//運算,就可以判斷是否具有該屬性
lptstr lpfilesystemnamebuffer,
//驅動器的檔案系統名稱,比如"ntfs「
dword nfilesystemnamesize //陣列大小
);*/int main()
tchar szdrivename[max_path];
dword dwvolumeserialnumber;
dword dwmaximumcompoentlength;
dword dwfilesystemflags;
tchar szfilesystemnamebuffer[max_path];
if (!getvolumeinformation(//該函式呼叫可能會失敗
text("c:\\"),//驅動器的根目錄
szdrivename,
max_path,
&dwvolumeserialnumber,
&dwmaximumcompoentlength,
&dwfilesystemflags,
szfilesystemnamebuffer,
max_path
))if (dwfilesystemflags&file_volume_quotas)//磁碟配額
if (dwfilesystemflags*file_supports_encryption)//是否允許加密
//還有很多屬性,就不一 一枚舉了
檢測邏輯驅動器
主要用到的api有getlogicaldrives getlogicaldirvestrings,getdrivetype,getdiskfreespace.分別介紹如下 1.dword getlogicaldrives void 此函式沒有引數,它的返回值是乙個掩碼,用來描述當前可用的邏輯驅動器。...
磁碟驅動器
磁碟驅動器 disk driver 又稱 磁碟機 是以磁碟作為記錄資訊 的 儲存裝置。磁碟驅動器讀取磁碟中的資料,傳遞給處理器。磁碟驅動器包括軟盤驅動器,硬碟驅動器,光碟驅動器等。磁碟驅動器由 磁頭 磁碟 讀寫 電路及機械伺服裝置等組成。ibm公司於1956年在其model 305 ramac中第一...
列出本機所有固定驅動器和可移動驅動器
getdrivetype 路徑 判斷乙個磁碟驅動器的型別 返回乙個整數 0 驅動器型別不確定 1 系統目錄不存在 2 drive removable 是可移動驅動器 3 drive fixed 是固定驅動器 4 drive remote 是網路驅動器 5 drive cdrom 是cd rom驅動器...