📄 main.cpp
字号:
CmbValFan->Items->Clear();
for (int i=0;i!=16;++i)
{
CmbFan->Items->Add(IntToStr(i));
CmbWriteFan->Items->Add(IntToStr(i));
CmbValFan->Items->Add(IntToStr(i));
}
CmbFan->ItemIndex = 0;
CmbBlock->Items->Clear();
for (int i=0;i!=4;++i)
{
CmbBlock->Items->Add(IntToStr(i));
}
CmbBlock->Items->Add("选择所有块");
CmbBlock->ItemIndex = 4;
RC500USB_init();
StatusBar->Panels->Items[0]->Text = "已连接...";
BtnInitEdit->Click();
}
//---------------------------------------------------------------------------
void __fastcall TFrmMain::BtnInitEditClick(TObject *Sender)
{
TEdit *p;
for (int i=0;i!=GroupBox1->ControlCount;++i)
{
if(GroupBox1->Controls[i]->ClassNameIs("TEdit"))
{
p=dynamic_cast<TEdit *>(GroupBox1->Controls[i]);
p->Text= "00";
p->MaxLength=2;
//ShowMessage(p->Name);
}
}
}
//---------------------------------------------------------------------------
void __fastcall TFrmMain::CmbWriteFanSelect(TObject *Sender)
{
CmbWriteBlock->Items->Clear();
for (int i=0;i!=4;++i)
{
if (i==0 && CmbWriteFan->ItemIndex==0)
continue;
CmbWriteBlock->Items->Add(IntToStr(i));
}
CmbWriteBlock->ItemIndex = 0;
}
//---------------------------------------------------------------------------
void __fastcall TFrmMain::CmbValFanSelect(TObject *Sender)
{
CmbValBlock->Items->Clear();
for (int i=0;i!=3;++i)
{
if (i==0 && CmbValFan->ItemIndex==0)
continue;
CmbValBlock->Items->Add(IntToStr(i));
}
CmbValBlock->ItemIndex = 0;
}
//---------------------------------------------------------------------------
void __fastcall TFrmMain::BtnReadValClick(TObject *Sender)
{
try
{
if (CmbValFan->Text.Trim()=="")
{
ShowMessage("请选择扇区!");
return;
}
if (CmbValBlock->Text.Trim()=="")
{
ShowMessage("请选择区块!");
return;
}
if (!QueryCard()) return;
int iFan(0),iBlock(0);
long lValue;
iFan = CmbValFan->Text.ToInt() ;
iBlock = CmbValBlock->Text.ToInt() ;
if(RC500USB_authkey(0,szpwd,iFan)!=0)
{
ShowMessage("验证错误");
return;
}
if(RC500USB_readval(iFan*4+iBlock,lValue)!=0)
{
ShowMessage("读取数据错误");
return;
}
RC500USB_halt(); //挂起
AnsiString s;
s = "00000000" + IntToHex((int)lValue,2);
s = s.LowerCase();
EdtValue->Text = "0x" + RightStr(s,8);
}
catch(Exception &e)
{
ShowMessage(e.Message);
}
}
//---------------------------------------------------------------------------
void __fastcall TFrmMain::BtnWriteValClick(TObject *Sender)
{
try
{
if (CmbValFan->Text.Trim()=="")
{
ShowMessage("请选择扇区!");
return;
}
if (CmbValBlock->Text.Trim()=="")
{
ShowMessage("请选择区块!");
return;
}
if (!QueryCard()) return;
int iFan(0),iBlock(0);
long lValue;
iFan = CmbValFan->Text.ToInt() ;
iBlock = CmbValBlock->Text.ToInt() ;
if(RC500USB_authkey(0,szpwd,iFan)!=0)
{
ShowMessage("验证错误");
return;
}
AnsiString s;
s=EdtValue->Text.LowerCase();
if (LeftStr(s,2) != "0x" )
s = "0x" + s;
lValue=StrToInt(s);
if(RC500USB_writeval(iFan*4+iBlock,lValue)!=0)
{
ShowMessage("写入数据错误");
return;
}
RC500USB_halt(); //挂起
MemResult->Clear();
MemResult->Lines->Add("写入 扇区:" + IntToStr(iFan) + " 块:" + IntToStr(iBlock) + " 数值如下:");
MemResult->Lines->Add(s);
}
catch(Exception &e)
{
ShowMessage(e.Message);
}
}
//---------------------------------------------------------------------------
bool TFrmMain::QueryCard(void)
{
if(RC500USB_request (1,type)!=0) //对读卡器进行操作
{
ShowMessage("感应区内没有卡");
return false;
}
if(RC500USB_anticoll(0,snr)!=0) //进行防碰撞选择,成功则返回卡号
{
ShowMessage("防碰撞错误");
return false;
}
if(RC500USB_select(snr,size)!=0) //选择卡
{
ShowMessage("选择卡错误");
return false;
}
return true;
}
void __fastcall TFrmMain::Button1Click(TObject *Sender)
{
__try
{
FrmRegIC = new TFrmRegIC(this,"123456","中国赏枯在地","","","");
FrmRegIC->ShowModal();
if (FrmRegIC->ModalResult == mrOk)
{
if (FrmRegIC->Result)
{
}
else
{
}
}
else
{
}
}
__finally
{
delete FrmRegIC;
FrmRegIC=NULL;
}
}
//---------------------------------------------------------------------------
void __fastcall TFrmMain::Button2Click(TObject *Sender)
{
__try
{
FrmTest = new TFrmTest(this);
FrmTest->ShowModal();
}
__finally
{
delete FrmTest;
FrmTest=NULL;
}
}
//---------------------------------------------------------------------------
void __fastcall TFrmMain::Button3Click(TObject *Sender)
{
AnsiString s;
s=Edit16->Text.Trim();
if (s.Length()!=47)
{
ShowMessage("格式不对!");
return;
}
for (int i=0;i!=48;i+=3)
{
if (s.c_str()[i]==NULL ||
s.c_str()[i+1]==NULL)
{
ShowMessage("格式不对!");
return;
}
if ((i+2) >=47) break;
if (s.c_str()[i+2]!=' ')
{
ShowMessage("格式不对!");
return;
}
}
// unsigned char *p;
//
//
//
// ShowMessage(s.Length());
// p= new unsigned char[s.Length()];
// for(int i=0;i<s.Length();i++)
// {
// ShowMessage(s.c_str()[i]);
// if ( != '' )
// if (s.c_str()[i] != '')
// p[i]= s.c_str()[i];
// }
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -