Delphi以其優良的視覺化編程,靈活的Windows API接口,豐富的底層操作越來越受到程式設計愛好者的青睞。
在Delphi中,透過呼叫Windows API,可以很方便地獲取系統信息,這有助於我們編寫出更好的Windows應用程式。以下程式在Delphi3.0 For Windows 9x下編譯通過。
一、 用GetDriveType函數取得磁碟信息
Lbl_DriveType:Tlabel;
DriveType:Word; //定義磁碟機類型變數
DriveType:=GetDriveType(RootPathName); //取得RootPathName所對應的磁碟機資訊
case DriveType of
DRIVE_REMOVABLE:Lbl_DriveType.Caption:= '軟碟機';
DRIVE_FIXED : Lbl_DriveType.Caption:= '硬碟';
DRIVE_REMOTE: Lbl_DriveType.Caption:= '網路磁碟機';
DRIVE_CDROM: Lbl_DriveType.Caption:= '光碟機';
DRIVE_RAMDISK: Lbl_DriveType.Caption:= '記憶體虛擬磁碟';
end; //將該磁碟資訊顯示在Lbl_DriveType中
二、 用GlobalMemoryStatus函數取得記憶體使用資訊
MemStatus: TMEMORYSTATUS; //定義記憶體結構變量
Lbl_Memory:Tlabel;
MemStatus.dwLength := size of(TMEMORYSTATU??
S);
GlobalMemoryStatus(MemStatus); //傳回記憶體使用資訊
Lbl_Memory.Caption := format('共有記憶體: %d KB 可用記憶體: %dKB',[MemStatus.dwAvailPhys div 1024,MemStatus.dwTotalPhys div 1024]);
//將記憶體資訊顯示在Lbl_Memory中
三、 用GetSystemInfo函數取得CPU訊息
SysInfo: TSYSTEMINFO;
Lbl_CPUName:Tlabel;
GetSystemInfo(SysInfo);//取得CPU訊息
case SysInfo.dwPRocessorType of
PROCESSOR_INTEL_386:Lbl_CPUName.Caption:=format('%d%s',[SysInfo.dwNumber Of Processors,'Intel80386']);
PROCESSOR_INTEL_486:Lbl_CPUName.Caption:=format('%d%s',[SysInfo.dwNumber Of Processors, 'Intel 80486']);
PROCESSOR_INTEL_PENTIUM:Lbl_CPUName.Caption:=format('%d%s',[SysInfo.dwNum
berOfProcessors, 'Intel Pentium']);
PROCESSOR_MipS_R4000:Lbl_CPUName.Caption:=format('%d%s',[SysInfo.dwNumberOfProcessors, 'MIPS R4000']);
PROCESSOR_ALPHA_21064:Lbl_CPUName.Caption:=format('%d%s',[SysInfo.dwNumberOfProcessors, 'ALPHA 21064']);
end;//把CPU訊息顯示在Lbl_CPUName中。