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

📄 ftpmain.cpp

📁 C++Builder程序员编程手记《配书光盘》
💻 CPP
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop

#include "ftpmain.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFormMain *FormMain;
//---------------------------------------------------------------------------
__fastcall TFormMain::TFormMain(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TFormMain::ConnectButtonClick(TObject *Sender)
{
  if (CheckBox1->Checked)
  {
    NMFTP1->Proxy = Edit6->Text;
    NMFTP1->ProxyPort = StrToInt(Edit7->Text);
  }
  NMFTP1->Host = HostTxt->Text;
  NMFTP1->Port = StrToInt(PortTxt->Text);
  NMFTP1->UserID = UserTxt->Text;
  NMFTP1->Password = PassTxt->Text;
  NMFTP1->Connect();
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::DisconnectButtonClick(TObject *Sender)
{
  NMFTP1->Disconnect();	        
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::Button3Click(TObject *Sender)
{
  NMFTP1->Nlist();        
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::Button4Click(TObject *Sender)
{
  NMFTP1->List();        
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::Button5Click(TObject *Sender)
{
  NMFTP1->ChangeDir(DirTxt->Text);        
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::Button6Click(TObject *Sender)
{
  if(OpenDialog1->Execute())
  {
    LocalTxt->Text=OpenDialog1->FileName;
    NMFTP1->Download(RemoteTxt->Text, LocalTxt->Text);
  }
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::Button7Click(TObject *Sender)
{
  NMFTP1->Abort();        
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::Button8Click(TObject *Sender)
{
  NMFTP1->DownloadRestore(RemoteTxt->Text, LocalTxt->Text);        
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::Button18Click(TObject *Sender)
{
  NMFTP1->Rename(Edit8->Text, Edit9->Text);        
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::Button17Click(TObject *Sender)
{
  NMFTP1->Reinitialize();
  PageControl1->ActivePage = TabSheet2;
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::Button16Click(TObject *Sender)
{
  NMFTP1->Delete(Edit5->Text);
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::Button14Click(TObject *Sender)
{
  NMFTP1->MakeDirectory(Edit1->Text);        
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::Button15Click(TObject *Sender)
{
  NMFTP1->RemoveDir(Edit2->Text);        
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::Button11Click(TObject *Sender)
{
  NMFTP1->UploadAppend(Edit3->Text, Edit4->Text);        
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::Button12Click(TObject *Sender)
{
  NMFTP1->UploadUnique(Edit3->Text);        
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::Button13Click(TObject *Sender)
{
  NMFTP1->UploadRestore(Edit3->Text, Edit4->Text, StrToInt(PosTxt->Text));
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::Button10Click(TObject *Sender)
{
  NMFTP1->Upload(Edit3->Text, Edit4->Text);
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::Button9Click(TObject *Sender)
{
  NMFTP1->Abort();
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::NMFTP1Connect(TObject *Sender)
{
  StatusBar1->SimpleText = "已连接";
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::NMFTP1ConnectionFailed(TObject *Sender)
{
  ShowMessage("连接失败");
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::NMFTP1Disconnect(TObject *Sender)
{
  if (StatusBar1 != 0)
    StatusBar1->SimpleText = "已断开连接";
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::NMFTP1Error(TComponent *Sender, WORD Errno,
      AnsiString Errmsg)
{
  ShowMessage("错误 "+IntToStr(Errno)+": "+Errmsg);
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::NMFTP1Failure(bool &handled, TCmdType Trans_Type)
{
  switch (Trans_Type) {
    case cmdChangeDir:
      StatusBar1->SimpleText = "修改目录失败";
      break;
    case cmdMakeDir:
      StatusBar1->SimpleText = "创建目录失败";
      break;
    case cmdDelete:
      StatusBar1->SimpleText = "删除失败";
      break;
    case cmdRemoveDir:
      StatusBar1->SimpleText = "清除目录失败";
      break;
    case cmdList:
      StatusBar1->SimpleText = "列表失败";
      break;
    case cmdRename:
      StatusBar1->SimpleText = "重命名失败";
      break;
    case cmdUpRestore:
      StatusBar1->SimpleText = "上载恢复失败";
      break;
    case cmdDownRestore:
      StatusBar1->SimpleText = "下载恢复失败";
      break;
    case cmdDownload:
      StatusBar1->SimpleText = "下载失败";
      break;
    case cmdUpload:
      StatusBar1->SimpleText = "上载失败";
      break;
    case cmdAppend:
      StatusBar1->SimpleText = "追加上载失败";
      break;
    case cmdReInit:
      StatusBar1->SimpleText = "重置失败";
      break;
    case cmdAllocate:
      StatusBar1->SimpleText = "定位失败";
      break;
    case cmdNList:
      StatusBar1->SimpleText = "列文件名失败";
      break;
    case cmdDoCommand:
      StatusBar1->SimpleText = "操作失败";
      break;
	  default:
      ShowMessage("无法辨认的操作失败");
      break;
  }
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::NMFTP1HostResolved(TComponent *Sender)
{
  StatusBar1->SimpleText = "已找到宿主";
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::NMFTP1InvalidHost(bool &handled)
{
  AnsiString NewHost;
  if (InputQuery("无效宿主", "请选择另一个宿主", NewHost))
  {
    NMFTP1->Host = NewHost;
    handled = true;
  }
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::NMFTP1ListItem(AnsiString Listing)
{
  Memo1->Lines->Add(Listing);
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::NMFTP1PacketRecvd(TObject *Sender)
{
  StatusBar1->SimpleText = "已得到"+IntToStr(NMFTP1->BytesTotal)+"字节中的"+IntToStr(NMFTP1->BytesRecvd)+"个字节";
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::NMFTP1PacketSent(TObject *Sender)
{
  StatusBar1->SimpleText = "已发送"+IntToStr(NMFTP1->BytesTotal)+"字节中的"+IntToStr(NMFTP1->BytesSent)+"个字节";
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::NMFTP1Status(TComponent *Sender, AnsiString Status)
{
  if (StatusBar1 != 0)
    StatusBar1->SimpleText = Status;        
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::NMFTP1Success(TCmdType Trans_Type)
{
  switch(Trans_Type)
  {
    case cmdChangeDir:
      StatusBar1->SimpleText = "目录修改成功";
      break;
    case cmdMakeDir:
      StatusBar1->SimpleText = "目录创建成功";
      break;
    case cmdDelete:
      StatusBar1->SimpleText = "已成功删除";
      break;
    case cmdRemoveDir:
      StatusBar1->SimpleText = "清除目录成功";
      break;
    case cmdList:
      StatusBar1->SimpleText = "列表成功";
      break;
    case cmdRename:
      StatusBar1->SimpleText = "重命名成功";
      break;
    case cmdUpRestore:
      StatusBar1->SimpleText = "上载恢复成功";
      break;
    case cmdDownRestore:
      StatusBar1->SimpleText = "下载恢复成功";
      break;
    case cmdDownload:
      StatusBar1->SimpleText = "下载完成";
      break;
    case cmdUpload:
      StatusBar1->SimpleText = "上载完成";
      break;
    case cmdAppend:
      StatusBar1->SimpleText = "追加上载完成";
      break;
    case cmdReInit:
      StatusBar1->SimpleText = "已重置";
      break;
    case cmdAllocate:
      StatusBar1->SimpleText = "搜索成功";
      break;
    case cmdNList:
      StatusBar1->SimpleText = "列文件名成功";
      break;
    case cmdDoCommand:
      StatusBar1->SimpleText = "操作成功";
      break;
    default:
      break;
  }
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::NMFTP1TransactionStart(TObject *Sender)
{
  StatusBar1->SimpleText = "开始数据传输";
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::NMFTP1TransactionStop(TObject *Sender)
{
  StatusBar1->SimpleText = "传输完成";
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::NMFTP1UnSupportedFunction(TCmdType Trans_Type)
{
  switch(Trans_Type)
  {
    case cmdChangeDir:
      ShowMessage("不支持修改目录");
      break;
    case cmdMakeDir:
      ShowMessage("不支持创建目录");
      break;
    case cmdDelete:
      ShowMessage("不支持删除");
      break;
    case cmdRemoveDir:
      ShowMessage("不支持目录清除");
      break;
    case cmdList:
      ShowMessage("不支持文件列表");
      break;
    case cmdRename:
      ShowMessage("不支持重命名");
      break;
    case cmdUpRestore:
      ShowMessage("不支持上载恢复");
      break;
    case cmdDownRestore:
      ShowMessage("不支持下载恢复");
      break;
    case cmdDownload:
      ShowMessage("不支持下载");
      break;
    case cmdUpload:
      ShowMessage("不支持上载");
      break;
    case cmdAppend:
      ShowMessage("不支持追加上载");
      break;
    case cmdReInit:
      ShowMessage("不支持重置");
      break;
    case cmdAllocate:
      ShowMessage("不支持搜索");
      break;
    case cmdNList:
      ShowMessage("不支持文件名列表");
      break;
    case cmdDoCommand:
      ShowMessage("不支持的操作");
      break;
    default:
      break;
  }
}
//---------------------------------------------------------------------------



⌨️ 快捷键说明

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