硬盤
計算機設(shè)備有很多,如:光驅(qū)、聲卡、鍵盤和鼠標等。如何在計算機應(yīng)用程序中自動控制這些設(shè)備的使用,將給你的工作帶來極大的方便。筆者用DEPHI和VFP編制了兩組應(yīng)用實例自動檢測CD-ROM光驅(qū)和聲卡。
一、用DEPHI、VFP自動檢測CD-ROM光驅(qū)的方法:
1.檢測的關(guān)鍵:調(diào)用WINDOWS的API函數(shù)GetDriveType.即以微機上的可能盤符(A~Z)的對應(yīng)值(0~25)作為該函數(shù)的入口參數(shù)對該函數(shù)進行調(diào)用,然后檢查其返回值.若返回值為4,則表示檢測到光驅(qū)或網(wǎng)絡(luò)驅(qū)動器,否則未檢測到.
2.WINDOWS的API函數(shù)GetDriveType,其語法格式如下:
Declare Function GetDriveType Lib "Kernel" (ByVal DriveNumber As Integer) As Integer
入口參數(shù)DriveNumber的取值為0,1,2,3等,其中A驅(qū)動器為0;B驅(qū)動器B為1;C驅(qū)動器為2;依此類推.函數(shù)返回值是0為未檢測到驅(qū)動器;2為軟驅(qū);3為硬盤;4為CD-ROM光驅(qū)或網(wǎng)絡(luò)驅(qū)動器.
3.應(yīng)用實例:
實例一:用DEPHI 4.0自動檢測CD-ROM光驅(qū)。
窗體 FORM1 用DEPHI 4.0自動檢測CD-ROM光驅(qū)
procedure TForm1.FormCreate(Sender: TObject);
var drives,drivetype:string;
drvs:pchar;
x,i:integer;
begin
for i:=0 to 25 do
begin
drives:=chr(65+i)+:\;
strpcopy(drvs,drives);
x:=getdrivetype(drvs);
case x of
2:drivetype:=drives+是可移動驅(qū)動器。;
3:drivetype:=drives+是固定驅(qū)動器。;
4:drivetype:=drives+是網(wǎng)絡(luò)驅(qū)動器。;
5:drivetype:=drives+是CD-ROM驅(qū)動器。;
6:drivetype:=drives+是RAMDISK驅(qū)動器。;
else
drivetype:=drives+不是驅(qū)動器。;
END;
showmessage(drivetype);
end;
end;
計算機設(shè)備有很多,如:光驅(qū)、聲卡、鍵盤和鼠標等。如何在計算機應(yīng)用程序中自動控制這些設(shè)備的使用,將給你的工作帶來極大的方便。筆者用DEPHI和VFP編制了兩組應(yīng)用實例自動檢測CD-ROM光驅(qū)和聲卡。
一、用DEPHI、VFP自動檢測CD-ROM光驅(qū)的方法:
1.檢測的關(guān)鍵:調(diào)用WINDOWS的API函數(shù)GetDriveType.即以微機上的可能盤符(A~Z)的對應(yīng)值(0~25)作為該函數(shù)的入口參數(shù)對該函數(shù)進行調(diào)用,然后檢查其返回值.若返回值為4,則表示檢測到光驅(qū)或網(wǎng)絡(luò)驅(qū)動器,否則未檢測到.
2.WINDOWS的API函數(shù)GetDriveType,其語法格式如下:
Declare Function GetDriveType Lib "Kernel" (ByVal DriveNumber As Integer) As Integer
入口參數(shù)DriveNumber的取值為0,1,2,3等,其中A驅(qū)動器為0;B驅(qū)動器B為1;C驅(qū)動器為2;依此類推.函數(shù)返回值是0為未檢測到驅(qū)動器;2為軟驅(qū);3為硬盤;4為CD-ROM光驅(qū)或網(wǎng)絡(luò)驅(qū)動器.
3.應(yīng)用實例:
實例一:用DEPHI 4.0自動檢測CD-ROM光驅(qū)。
窗體 FORM1 用DEPHI 4.0自動檢測CD-ROM光驅(qū)
procedure TForm1.FormCreate(Sender: TObject);
var drives,drivetype:string;
drvs:pchar;
x,i:integer;
begin
for i:=0 to 25 do
begin
drives:=chr(65+i)+:\;
strpcopy(drvs,drives);
x:=getdrivetype(drvs);
case x of
2:drivetype:=drives+是可移動驅(qū)動器。;
3:drivetype:=drives+是固定驅(qū)動器。;
4:drivetype:=drives+是網(wǎng)絡(luò)驅(qū)動器。;
5:drivetype:=drives+是CD-ROM驅(qū)動器。;
6:drivetype:=drives+是RAMDISK驅(qū)動器。;
else
drivetype:=drives+不是驅(qū)動器。;
END;
showmessage(drivetype);
end;
end;

