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

📄 yhdl.cpp

📁 营业用电管理系统(网络版)是本公司推出的新一代软件产品
💻 CPP
字号:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "YHDL.h"
#include "YDmain.h"
#include "Ydlyb.h"
#include "YDqfll.h"
#include "YDyhll.h"
#include "YDdatam.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TCLogin *CLogin;
//---------------------------------------------------------------------------
__fastcall TCLogin::TCLogin(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TCLogin::FormCreate(TObject *Sender)
{
   StatusBar1->Panels->Items[0]->Text ="未注册";
   DateTimePicker1->Date=Date();
   char Name[128];
   char ComputerName[255];
   DWORD size = 255;
   AnsiString username;
   AnsiString password;
   String strpath;
   AnsiString AppPath = ExtractFilePath(Application->ExeName);
   strpath= AppPath +"YDLOGIN.INI";
   GetComputerName(ComputerName, &size);
   GetPrivateProfileString(
         "YDLOGIN", 			// []中节的名称
         "SERVERNAME",         			// =号前的键名
         "",          				// 如果没有找到字符串时,返回Nil
         Name,           			// 存放取得字符串
         100,     		        	// 取得字符的允许最大长度
         strpath.c_str()		// .INI文件名
      );
   servername=Name;
   GetPrivateProfileString(
         "YDLOGIN", 			// []中节的名称
         "USERNAME",         			// =号前的键名
         "",          				// 如果没有找到字符串时,返回Nil
         Name,           			// 存放取得字符串
         100,     		        	// 取得字符的允许最大长度
         strpath.c_str()		// .INI文件名
      );
  username=Name;
   GetPrivateProfileString(
         "YDLOGIN", 			// []中节的名称
         "PASSWORD",         			// =号前的键名
         "",          				// 如果没有找到字符串时,返回Nil
         Name,           			// 存放取得字符串
         100,     		        	// 取得字符的允许最大长度
         strpath.c_str()		// .INI文件名
      );
  password=Name;
    TStringList *MyList=new TStringList();
    try
    {
     MyList->Add("BLOB SIZE=64");
     MyList->Add("ENABLE BCD=TRUE");
//     MyList->Add("SCHEMA CACHE SIZE=64");
//     MyList->Add("SCHEMA CACHE TIME=1");
     MyList->Add("DATABASE NAME=Yddb");
     MyList->Add("SERVER NAME="+servername);
     MyList->Add("USER NAME="+username);
     MyList->Add("PASSWORD="+password);
     Session->AddAlias("ydgl_c", "MSSQL", MyList);
//     Session->SaveConfigFile();
     YDData->YYYD->Open();
     YDData->TBczy->Open();
     YDData->TBczy->First();
     while (!YDData->TBczy->Eof)
       {
        ComboBox1->Items->Add(YDData->TBczy->FieldByName("czymc")->AsString);
        YDData->TBczy->Next();
       }
      ComboBox1->Text=ComboBox1->Items->Strings[0];
      DateTimePicker1->Date=Date();

    }
    catch (...)
     {
      MessageBox(NULL,"MSSQL Server数据库服务器尚未安装或启动!","提示",MB_OK|MB_ICONWARNING);
      Session->DeleteAlias("ydgl_c"); //删除BDE别名
      Session->SaveConfigFile();
      delete MyList;
      Close();
     }
  if(ClientSocket1->Active)
  {
    ClientSocket1->Active=false;
  }
  else
  {
   AnsiString Server=servername;
   ClientSocket1->Host=Server;
   ClientSocket1->Active=true;
  }


}
//---------------------------------------------------------------------------
void __fastcall TCLogin::BitBtn2Click(TObject *Sender)
{
//   Application->Terminate();
 dlok=0;
 Close();
}
//---------------------------------------------------------------------------
void __fastcall TCLogin::BitBtn3Click(TObject *Sender)
{
// Application->HelpJump("dl");

}
//---------------------------------------------------------------------------


void __fastcall TCLogin::BitBtn1Click(TObject *Sender)
{
 dlok=0;
// char Name[128];
 char ComputerName[255];
 DWORD size = 255;
// AnsiString servername;
// String strpath;
// AnsiString AppPath = ExtractFilePath(Application->ExeName);
// strpath= AppPath +"YDLOGIN.INI";
 GetComputerName(ComputerName, &size);

 YDData->TBczy->First();
 while (!YDData->TBczy->Eof)
    {
     if (YDData->TBczy->FieldByName("czymc")->AsString==Trim(ComboBox1->Text)&&YDData->TBczy->FieldByName("czykl")->AsString==Trim(Edit1->Text))
       {
        dlok=1;
        gzzname=ComputerName;
        ywrq=DateToStr(DateTimePicker1->Date);
        czyname=YDData->TBczy->FieldByName("czymc")->AsString;
        kzqx=YDData->TBczy->FieldByName("kzqx1")->AsString;
        TQuery *Query1=new TQuery(this);
        Query1->DatabaseName="Yddb";
        Query1->SQL->Add("insert into yhrz values('"+gzzname+"','"+Now()+"',null,'登录')");
        Query1->ExecSQL();
        delete Query1;
        break;
       }
      else YDData->TBczy->Next();
    }
    if (dlok==0)
      {
        MessageBox(NULL,"操作员或口令错误,请重新输入!","提示",MB_OK|MB_ICONWARNING);
        return;
      }
    YDData->TByhda->Open();
    YDData->TBdbda->Open();
if (StatusBar1->Panels->Items[0]->Text=="未注册")
 {
  if (YDData->TByhda->RecordCount>=20||YDData->TBdbda->RecordCount>=30)
    {
     dlok=0;
     MessageBox(NULL,"软件尚未注册,请在后台管理工具中注册后使用!","提示",MB_OK|MB_ICONWARNING);
     YDData->TByhda->Close();
     YDData->TBdbda->Close();
    }
   else
   {
      YDData->TByhda->Close();
      YDData->TBdbda->Close();
   }
  }
 Close();
}
//---------------------------------------------------------------------------

void __fastcall TCLogin::FormClose(TObject *Sender, TCloseAction &Action)
{
   Session->DeleteAlias("ydgl_c"); //删除BDE别名
   Session->SaveConfigFile();

}
//---------------------------------------------------------------------------


void __fastcall TCLogin::FormKeyPress(TObject *Sender, char &Key)
{
if(Key==VK_RETURN) 
   {
      SendMessage(this->Handle,WM_NEXTDLGCTL,0,0);
      Key=0;
    }
}
//---------------------------------------------------------------------------

void __fastcall TCLogin::FormActivate(TObject *Sender)
{
 Edit1->SetFocus();        
}
//---------------------------------------------------------------------------

void __fastcall TCLogin::ClientSocket1Error(TObject *Sender,
      TCustomWinSocket *Socket, TErrorEvent ErrorEvent, int &ErrorCode)
{
  if (ErrorCode==10061||ErrorCode==10053)
   {
   ShowMessage("应用服务器尚未打开!");
   ErrorCode=0;
   }
}
//---------------------------------------------------------------------------

void __fastcall TCLogin::ClientSocket1Read(TObject *Sender,
      TCustomWinSocket *Socket)
{
 StatusBar1->Panels->Items[0]->Text=Socket->ReceiveText();
 ClientSocket1->Close();
}
//---------------------------------------------------------------------------

void __fastcall TCLogin::ClientSocket1Connecting(TObject *Sender,
      TCustomWinSocket *Socket)
{
// StatusBar1->Panels->Items[0]->Text=Socket->ReceiveText();
// ClientSocket1->Close();
        
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

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