书上的一个例子,但无法运行,郁闷!拜托各位给看看
unit main;interfaceuses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, ExtCtrls;type
  TMainForm = class(TForm)
    Panel1: TPanel;
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    TabSheet2: TTabSheet;
    TabSheet3: TTabSheet;
    TabSheet4: TTabSheet;
    TabSheet5: TTabSheet;
    TabSheet6: TTabSheet;
    TabSheet7: TTabSheet;
    TabSheet8: TTabSheet;
    procedure FormActivate(Sender: TObject);
  private
    { Private declarations }
    passwordin:boolean;
    function password(s1:string;s2:string):boolean;
  public
    { Public declarations }
   // function password(s1:string;s2:string):boolean;
  end;var
  MainForm: TMainForm;implementationuses Unit1;{$R *.dfm}
function tmainform.password(s1:string;s2:string):boolean;
var
  myfile:file;
  rt:boolean;
  numread:Integer;
  buf1,buf2:string[30];
  username:string;
begin
  rt:= false;
  assignfile(myfile,'system.ini');
  reset(myfile,1);            //打开系统配置文件
    repeat
      blockread(myfile,buf1,12,numread);    //读用户名
      blockread(myfile,buf2,12,numread);    //读密码
      if(s1= buf1) and(s2= buf2) then       //判断是否正确
      begin
        username:= s1;                      //给用户名赋值
        username:= s2;
        result:= true;                      //置返回值
        exit;
      end;
      until(numread= 0);
      closefile(myfile);                    //关闭文件
      passwordin:= rt;
end;procedure TMainForm.FormActivate(Sender: TObject);
var
  times,rn:Integer;
  s1,s2:string[200];
begin
  times:=1;
  if login = false then    //login变量控制系统登录窗口是否显示
  begin
    login:= true;
  repeat
    rn:=PasswordDlg.showmodal;    //显示系统登录窗口
    if rn = mrok then        //检验返回值
    begin
      s1:= PasswordDlg.ComboBox1.Text;   //读取用户名
      s2:= PasswordDlg.Password.Text;    //读取密码
      if Password(s1,s2) then            //比较密码(自定义函数)
      times:=200
      else
      begin
        times:=times+1;
        if times>3 then
          close
        else
          messagedlg('你输入的密码有误,请重新输入!',mtwarning,[mbok],0);
      end;
    end
    else  {rn = mrcancel}
    begin
      times:= 100;
      close;
    end;
    until(times>3);
  if PasswordDlg.ComboBox1.Text ='system' then  //以下不同用户可见不同的页
     mainform.UpdateActions;                    //激活系统
     PageControl1.activepage:= tabsheet1;
  end;
  if PasswordDlg.ComboBox1.Text= 'renshi' then
    begin
      mainform.UpdateActions;                    //激活系统
      PageControl1.activepage:= tabsheet1;
      tabsheet3.TabVisible:= false;
      tabsheet4.TabVisible:= false;
    end
  else if PasswordDlg.ComboBox1.Text= 'caiwu' then
    begin
      mainform.UpdateActions;                    //激活系统
      PageControl1.activepage:= tabsheet3;
      tabsheet1.TabVisible:= false;
      tabsheet2.TabVisible:= false;
    end
  else if PasswordDlg.ComboBox1.Text= 'guest' then
    begin
      mainform.UpdateActions;                    //激活系统
      PageControl1.activepage:= tabsheet1;
      tabsheet3.TabVisible:= false;
      tabsheet4.TabVisible:= false;
      tabsheet5.TabVisible:= false;
      tabsheet6.TabVisible:= false;
    end;
  end;end.
提示错误:
[Warning] main.pas(63): Return value of function 'TMainForm.password' might be undefined
[Error] main.pas(71): Undeclared identifier: 'login'
[Fatal Error] kaoqin.dpr(6): Could not compile used unit 'main.pas'