📄 unit1.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::CheckBox1Click(TObject *Sender)
{
if(CheckBox1->Checked)
{
Edit3->Enabled=true;
Edit3->SetFocus();
}
else
Edit3->Enabled=false;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
try
{
NMEcho1->ClearInput();
NMEcho1->Host=Edit1->Text;
NMEcho1->TimeOut=StrToInt(Edit2->Text);
if(CheckBox1->Checked)
NMEcho1->Port=StrToInt(Edit3->Text);
else
NMEcho1->Port=7;
NMEcho1->ReportLevel=Status_Basic;
NMEcho1->Connect();
Button1->Enabled=false;
Button2->Enabled=true;
}
catch(...)
{
StatusBar1->Panels->Items[0]->Text="Echo failed.";
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
NMEcho1->Disconnect();
Button1->Enabled=true;
Button2->Enabled=false;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::NMEcho1Connect(TObject *Sender)
{
StatusBar1->Panels->Items[0]->Text="Connect succeed.";
Memo1->Lines->Add("Echo has connected host.");
Memo1->Lines->Add("Local Address: "+NMEcho1->LocalIP);
Memo1->Lines->Add("Remote Address: "+NMEcho1->RemoteIP);
Memo1->Lines->Add("");
Memo1->Lines->Add("Connection echo Test.");
Memo1->Lines->Add(NMEcho1->Echo(Edit4->Text));
Memo1->Lines->Add("ElapsedTime:"+FloatToStr(NMEcho1->ElapsedTime)+"ms");
Memo1->Lines->Add("");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::NMEcho1ConnectFailed(TObject *Sender)
{
ShowMessage("Connect failed.");
NMEcho1->Disconnect();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::NMEcho1Disconnect(TObject *Sender)
{
StatusBar1->Panels->Items[0]->Text="Echo has disconnected.";
}
//---------------------------------------------------------------------------
void __fastcall TForm1::NMEcho1Resolved(TComponent *Sender)
{
Memo1->Lines->Add("Host domain name has been reserved.");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::NMEcho1InvalidHost(bool &Handled)
{
String hostname;
if(InputQuery("Invalid host!","A new host:",hostname))
{
Edit1->Text=hostname;
NMEcho1->Host=hostname;
Handled=true;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::NMEcho1Status(TComponent *Sender,
AnsiString Status)
{
Memo1->Lines->Add(NMEcho1->Status);
Memo1->Lines->Add("Last WinSock error: "+IntToStr(NMEcho1->LastErrorNo));
if(NMEcho1->BeenCanceled)
Memo1->Lines->Add("Input/ouput operation canceled");
if(NMEcho1->BeenTimedOut)
Memo1->Lines->Add("Operation timed out");
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -