//--------------------------------------------------------------------------- #include #pragma hdrstop #include "snmpsend.hpp" #include "snmp_browser_main.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma link "snmpsend" #pragma resource "*.dfm" TfrmMain *frmMain; //--------------------------------------------------------------------------- __fastcall TfrmMain::TfrmMain(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TfrmMain::btnSendClick(TObject *Sender) { TSNMPSend *pSNMPv3 = new TSNMPSend(); pSNMPv3->Timeout = 100; pSNMPv3->Query->Clear(); switch(cbxVersion->ItemIndex){ case 0 : pSNMPv3->Query->Version = SNMP_V1; break; case 1 : pSNMPv3->Query->Version = SNMP_V2C; break; default : pSNMPv3->Query->Version = SNMP_V3; break; } switch(cbxTV3Flags->ItemIndex){ case 0 : pSNMPv3->Query->Flags = NoAuthNoPriv; break; case 1 : pSNMPv3->Query->Flags = AuthNoPriv; break; case 2 : pSNMPv3->Query->Flags = AuthPriv; break; } pSNMPv3->Query->FlagReportable = true; pSNMPv3->Query->AuthMode = AuthMD5; pSNMPv3->Query->UserName = edtID->Text; pSNMPv3->Query->Password = edtPassword->Text; pSNMPv3->Query->PrivPassword = edtEncryption->Text; pSNMPv3->TargetHost = edtHostIP->Text; pSNMPv3->Query->PDUType = PDUGetRequest; pSNMPv3->Query->MIBAdd(edtOID->Text,"",ASN1_INT); if(pSNMPv3->SendRequest()) { mem->Lines->Add(pSNMPv3->Reply->MIBGet(edtOID->Text)); }else{ mem->Lines->Add("Fail Query"); } } //--------------------------------------------------------------------------- void __fastcall TfrmMain::cbxTV3FlagsChange(TObject *Sender) { switch(cbxTV3Flags->ItemIndex){ case 0 : edtID->Text = "ktged1"; break; case 1 : edtID->Text = "ktged2"; edtPassword->Text = "ktged2password"; break; case 2 : edtID->Text = "ktged3"; edtPassword->Text = "ktged3password"; edtEncryption->Text = "ktged3encryption"; break; } } //---------------------------------------------------------------------------