如何判斷一個磁盤為USB磁盤? |
尚未結案
|
cindy78
一般會員 發表:4 回覆:19 積分:4 註冊:2004-05-24 發送簡訊給我 |
我根據有關資料,利用GetDriveType,判斷一個磁盤的類型為DRIVE_REMOVABLEB時,且不是A盤時磁盤為USB.但是,產生如下問題,不是所有的USB槃都可以判斷得出來,有一些USB盤的屬性為DRIVE_FIXED,和硬盤的屬性一樣,不知怎麽樣才能準確的判斷一個磁盤為USB盤。我的程序如下:
DirList:=TStringList.Create;
len:=254;
buffer:=Pchar(Allocmem(255));
dw:=GetLogicalDriveStrings(len,buffer);
for i:=1 to (dw div 4) do
begin DirList.Add(AnsiString(buffer));
buffer:=buffer 4;
end;
for i:=0 to DirList.Count-1 do
begin PanFu:=PChar(allocmem(10));
strpcopy(panfu,DirList.Strings[i]);
case GetDriveType(panfu) of
0: flag:=0;
1 :flag:=1;
DRIVE_REMOVABLE:flag:=2;
DRIVE_FIXED:flag:=3;
DRIVE_REMOTE:flag:=4;
DRIVE_CDROM:flag:=5;
DRIVE_RAMDISK:flag:=6;
end;
if (flag=2) and (DirList.Strings[i]<>'A:\') and (DirList.Strings[i]<>'a:\') then
|
timhuang
尊榮會員 發表:78 回覆:1815 積分:1608 註冊:2002-07-15 發送簡訊給我 |
|
cindy78
一般會員 發表:4 回覆:19 積分:4 註冊:2004-05-24 發送簡訊給我 |
|
cindy78
一般會員 發表:4 回覆:19 積分:4 註冊:2004-05-24 發送簡訊給我 |
|
timhuang
尊榮會員 發表:78 回覆:1815 積分:1608 註冊:2002-07-15 發送簡訊給我 |
|
cindy78
一般會員 發表:4 回覆:19 積分:4 註冊:2004-05-24 發送簡訊給我 |
|
timhuang
尊榮會員 發表:78 回覆:1815 積分:1608 註冊:2002-07-15 發送簡訊給我 |
|
cindy78
一般會員 發表:4 回覆:19 積分:4 註冊:2004-05-24 發送簡訊給我 |
|
cindy78
一般會員 發表:4 回覆:19 積分:4 註冊:2004-05-24 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |