在DELPHI编程中确定系统运行模式

Author: 季昭君 Date: 1999年 第37期 13版

    系统运行模式就是指:WINDOWS是运行在哪种模式中,在WINDOWS3.X 中有正常模式,386增强模式;而现在的WINDOWS95/98有安全模式,运行在网络中的安全模式,正常模式等。如何才能区分系统是运行在上述的哪一种方式之下呢?在此,笔者就用DELPHI编程为您演示。
    说明:笔者调用API函数中的GETSYSTEMMETRICS函数来完成下面的程序,其API函数在WINDOWS.PAS中有声明代码。
    首先,新建一个工程,在FORM1上放上一个LABEL1和BUTTON1,其属性都不变,字体可设置大一些,然后输入以下代码:
    unit GETMODE;
    interface
    usesWindows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,StdCtrls;
    type TForm1 = class(TForm)
    Label1: TLabel;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    private{ Private declarations }
    public { Public declarations }
    end;
    var Form1: TForm1;
    implementation {$R *.DFM}
    procedure TForm1.FormCreate(Sender: TObject);
    begin
    FORM1.CAPTION:=′确定WINDOWS运行模式的演示程序′;
    BUTTON1.CAPTION:=′获取系统运行模式′;
    end;
    procedure TForm1.Button1Click(Sender: TObject);
    VAR
    RET:LONGINT; //声明变量
    begin
    RET:=GETSYSTEMMETRICS(SM_CLEANBOOT); //调用API函数
    CASE RET OF //CASE API函数的返回值
    1:LABEL1.CAPTION:=′您的系统正运行在安全模式下′;
    2:LABEL1.CAPTION:=′您的系统正运行在带有网络环境的安全模式下′;
    ELSE LABEL1.CAPTION:=′您的系统正运行在正常模式下′;
    END;
    end;
    end.