⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 login.cpp

📁 邮 电 公 司 erp源码
💻 CPP
字号:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "Login.h"
#include "Func.h"
#include "gvar.h"
#include "commfunction.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "SDEdit"
#pragma resource "*.dfm"
TfrmLogin *frmLogin;
//---------------------------------------------------------------------------
__fastcall TfrmLogin::TfrmLogin(TComponent* Owner)
  : TForm(Owner)
{
    this->ModalResult=0;
    FLoginTime=0;
    Result=-1;
    g_sdLogOn=false;
    g_sdSysPath=ExtractFileDir(Application->ExeName);
}
//---------------------------------------------------------------------------
void __fastcall TfrmLogin::btCacelClick(TObject *Sender)
{
    if(Application->MessageBox("确认不登录吗?",NULL,MB_YESNO)==IDYES)
    {
      g_sdLogOn=false;
      Close();
      Application->Terminate();
    }
    else
      this->ModalResult=0;
}
//---------------------------------------------------------------------------



void __fastcall TfrmLogin::btOkClick(TObject *Sender)
{
    AnsiString s;
    AnsiString RegStr;
    if(seUser->Text.IsEmpty())
    {
      if(Application->MessageBox("用户名不能为空!",NULL,MB_RETRYCANCEL)==IDRETRY)
      {
        seUser->SetFocus();
        this->ModalResult=0;
      }
      else
      {
        Close();
        Application->Terminate();
      }
    }
    else
    {
      this->Visible=false;
      try
      {
        try
        {
          g_sdRegister=false;
          StartWaitForm("系统正在注册用户,请稍候!");
          if(!g_ClientComm->RegSystem(seUser->Text))
          {
            this->ModalResult=mrAbort;
            return;
          }
        }
        __finally
        {
          EndWaitForm();
        }
        StartWaitForm("正在登录SD-ERP 服务器");
        try
        {
          s=EncAndDec(sePassword->Text);
          if(g_IComServer==NULL)
            g_IComServer=new TIComServer(g_ClientComm);
          Result=g_IComServer->LogIn(g_sdCompanyCode,seUser->Text,s,"");
        }
        catch(Exception &e)
        {
          throw Exception(e.Message);
        }
      }
      __finally
      {
        EndWaitForm();
      }
      switch(Result)
      {
        case 0:
          InitGlobeVar();
          Close();
          this->ModalResult=mrOk;
          break;
        case 1:
          this->ModalResult=0;
          break;
        case 2:
          this->ModalResult=0;
          break;
        case 3:
          this->ModalResult=0;
          break;
        case 4:
          this->ModalResult=0;
          break;
        default:
          this->ModalResult=mrAbort;
          Close();
          return;
      }
    }
}
//---------------------------------------------------------------------------

void __fastcall TfrmLogin::btAdvSetClick(TObject *Sender)
{
  this->ModalResult=0;  
}
//---------------------------------------------------------------------------



void __fastcall TfrmLogin::FormCreate(TObject *Sender)
{
    AnsiString s;
    s=GetInifileValue("Login","Check",ExtractFileDir(Application->ExeName)+"\\sdbod.dat");
    if(s=="1")
    {
      ckRember->Checked=true;
      seUser->Text=GetInifileValue("Login","UserCode",ExtractFileDir(Application->ExeName)+"\\sdbod.dat");
    }
    else
    {
      ckRember->Checked=false;
      seUser->Text="";
    }
}
//---------------------------------------------------------------------------

void __fastcall TfrmLogin::FormClose(TObject *Sender, TCloseAction &Action)
{
    if(Result==0)
    {
      if(ckRember->Checked)
      {
        SetInifileValue("Login","Check","1",ExtractFileDir(Application->ExeName)+"\\sdbod.dat");
        SetInifileValue("Login","UserCode",seUser->Text,ExtractFileDir(Application->ExeName)+"\\sdbod.dat");
      }
      else
        SetInifileValue("Login","Check","0",ExtractFileDir(Application->ExeName)+"\\sdbod.dat");
    }
    else
    {
      if(ckRember->Checked)
        SetInifileValue("Login","Check","1",ExtractFileDir(Application->ExeName)+"\\sdbod.dat");
      else
        SetInifileValue("Login","Check","0",ExtractFileDir(Application->ExeName)+"\\sdbod.dat");
    }
}
//---------------------------------------------------------------------------


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -