try
  ADOquery1.SQL.Text:='select * from users'+
                   ' where u_name='''+Edi_user.Text+
                   ''' and u_passwd='''+Edi_pass.Text+'''';
  ADOquery1.Close;
  ADOquery1.Open;
  if ADOquery1.RecordCount=1 then  begin
   Frm_Login.hide;
   Frm_Main:=TFrm_Main.Create(Application);
   Frm_Main.ShowModal();
  end  else  begin
   if passcount<=2 then  begin
      inc(passcount);
      Application.MessageBox('密码输入错误,请重新输入!','错误',MB_ICONWARNING);
      passcount:=passcount+1;
      Edi_pass.Text:='';
      Edi_pass.SetFocus();
  end else
   application.Terminate;
  end;
 finally end;

解决方案 »

  1.   

    try
    {
      ADOQuery1->SQL->Text = "SELECT * FROM users " + 
                             "WHERE u_name = '" + Edi_user->Text + 
                             "' AND u_passwd = '" + Edi_pass->Text"'";
      ADOQuery->Close();
      ADOQuery->Open();
      if(ADOQuery->RecordCount == 1)
      {
        Frm_Login.Hide();
        Frm_Main = new TFrm_Main(Application);
        Frm_Main->ShowModal();
      }
      else
      {
        if(passcount <= 2)
        {
          ++passwdcount;
          Application->MessageBox("密码输入错误,请重新输入!","错误",MB_ICONWARNING);
          ++passwdcount;
          Edi_pass->Text = "";
          Edi_pass.SetFocus();
          Application->Terminate();
        }
      }
    }
    catch(...)
    {
    }
      

  2.   

    不好意思,前一个回复有个地方写错了
    try
    {
      ADOQuery1->SQL->Text = "SELECT * FROM users " + 
                             "WHERE u_name = '" + Edi_user->Text + 
                             "' AND u_passwd = '" + Edi_pass->Text"'";
      ADOQuery->Close();
      ADOQuery->Open();
      if(ADOQuery->RecordCount == 1)
      {
        Frm_Login->Hide();
        Frm_Main = new TFrm_Main(Application);
        Frm_Main->ShowModal();
      }
      else
      {
        if(passcount <= 2)
        {
          ++passwdcount;
          Application->MessageBox("密码输入错误,请重新输入!","错误",MB_ICONWARNING);
          ++passwdcount;
          Edi_pass->Text = "";
          Edi_pass->SetFocus();
          Application->Terminate();
        }
      }
    }
    catch(...)
    {
    }
      

  3.   

    try
    {
      ADOQuery1->SQL->Text = "SELECT * FROM users " + 
                             "WHERE u_name = '" + Edi_user->Text + 
                             "' AND u_passwd = '" + Edi_pass->Text"'";
      ADOQuery->Close();
      ADOQuery->Open();
      if(ADOQuery->RecordCount == 1)
      {
        Frm_Login->Hide();
        Frm_Main = new TFrm_Main(Application);
        Frm_Main->ShowModal();
      }
      else
      {
        if(passcount <= 2)
        {
          ++passwdcount;
          Application->MessageBox("密码输入错误,请重新输入!","错误",MB_ICONWARNING);
          ++passwdcount;
          Edi_pass->Text = "";
          Edi_pass->SetFocus();
        }
        else
        {
           Application->Terminate();
        }
      }
    }
    catch(...)
    {
    }
      

  4.   

    http://community.csdn.net/Expert/topic/4742/4742428.xml?temp=.4966547