📄 loginform.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "LoginForm.h"
#include "StartForm.h"
#include "ClientManager.h"
#include "ControlBase.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "RzBckgnd"
#pragma link "RzPanel"
#pragma link "RzEdit"
#pragma link "RzLabel"
#pragma link "RzButton"
#pragma resource "*.dfm"
TLoginfrm *Loginfrm;
//---------------------------------------------------------------------------
__fastcall TLoginfrm::TLoginfrm(TComponent* Owner)
: TForm(Owner)
{
ADOConnection->ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=..\\CleManager\\database\\YZClientData.mdb;Mode=Share Deny None;Extended Properties="";Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Database Password="";Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=1;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False";
ADOConnection->Connected = true;
}
//---------------------------------------------------------------------------
void __fastcall TLoginfrm::LoginInClick(TObject *Sender)
{
/*----------------------身份验证查询----------------------------------------*/
ADOQueryUser->Active=false;
ADOQueryUser->SQL->Clear();
ADOQueryUser->SQL->Add("select * from USENAME where username = '"+EuserName->Text.Trim()+"' and pasw = '"+Epass->Text.Trim()+"'");
ADOQueryUser->Open();
ADOQueryUser->Active=true;
if(ADOQueryUser->RecordCount != 0)
{
TMainManager *MainManager;
if(ADOQueryUser->FieldByName("userid")->AsString !="-0001")
MainManager = new TMainManager(NULL,0);
else
MainManager = new TMainManager(NULL,1);
MainManager->ShowModal();
Close();
}
else
{
MsgShow("输入的用户名或者密码有误!","登录提示");
}
}
//---------------------------------------------------------------------------
void __fastcall TLoginfrm::EpassKeyPress(TObject *Sender, char &Key)
{
if(Key == 13)
LoginIn->SetFocus();
}
//---------------------------------------------------------------------------
void __fastcall TLoginfrm::EuserNameKeyPress(TObject *Sender, char &Key)
{
if(Key == 13)
Epass->SetFocus();
}
//---------------------------------------------------------------------------
void __fastcall TLoginfrm::RzBitBtn1Click(TObject *Sender)
{
Close();
}
//---------------------------------------------------------------------------
void __fastcall TLoginfrm::FormCreate(TObject *Sender)
{
AllPath = GetCurrentDir();
TDate firstDate ,currentDate,dayDate;
int number;
TRegKeyInfo rValueInfo1;
int iSubKeyNum;
AnsiString sKeyName;
double counter;
TRegistry *Reg;
try
{
TMainStart * MainStart;
MainStart= new TMainStart(NULL);
MainStart->ShowModal();
Reg = new TRegistry; //新建一个注册类;
Reg->RootKey = HKEY_CURRENT_USER;
if(Reg->OpenKey("\\Software\\Microsoft\\Shell Explorer",true))
{ int num1;
Reg->GetKeyInfo(rValueInfo1);
iSubKeyNum = rValueInfo1.NumSubKeys;
if(iSubKeyNum ==0 )
{
sKeyName = "\\Software\\Microsoft\\Shell Explorer\\";
sKeyName = sKeyName+"shell";
Reg->OpenKey(sKeyName,true);
iSubKeyNum = rValueInfo1.NumSubKeys;
Reg->WriteDate("Firad1001",Date());// 第一次使用时写入注册表日期;
Reg->WriteDate("Dirad1002",Date()); // 前一天使用时写入注册表日期;
Reg->WriteInteger("Nirad1003",0);
Reg->WriteString("Path",AllPath);
Application->MessageBox("欢迎您第一次进入本系统!\n该系统还可使用30天!", "peter作品", MB_OK );
}
else
{
number=1;
sKeyName = "\\Software\\Microsoft\\Shell Explorer\\";
sKeyName = sKeyName+"shell";
Reg->OpenKey(sKeyName,true);
firstDate=Reg->ReadDate("Firad1001");
number=Reg->ReadInteger("Nirad1003");
dayDate=Reg->ReadDate("Dirad1002");
currentDate=Date();
if((currentDate.Val-dayDate.Val)!=0)
{
number=number+1;
Reg->WriteInteger("Nirad1003",number);
}
if((currentDate.Val-firstDate.Val >30) || (number>=30) )
{
Application->MessageBox("本程序使用已经超过30天!\n将要关闭程序...","peter作品",MB_OK);
sflag="1";
}
else
{
sKeyName = "\\Software\\Microsoft\\Shell Explorer\\";
sKeyName = sKeyName+"shell";
Reg->OpenKey(sKeyName,true);
number=Reg->ReadInteger("Nirad1003");
AnsiString a_Str="该系统还可以试用"+IntToStr(30-number)+"天。";
Reg->WriteDate("Dirad1002",currentDate);
Application->MessageBox(a_Str.c_str(),"peter作品",MB_OK); //显示天数;
}
}
}
Timer1->Enabled=true;
}
catch(...)
{
}
}
//---------------------------------------------------------------------------
void __fastcall TLoginfrm::Timer1Timer(TObject *Sender)
{
if(sflag=="1")
Close();
else
Timer1->Enabled=false;
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -