編程完成撥號(hào)網(wǎng)絡(luò)連接及FTP應(yīng)用
發(fā)表時(shí)間:2023-08-12 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]本文介紹了Windows下如何在程序中加入撥號(hào)網(wǎng)絡(luò),如何自己編寫(xiě) 程序?qū)崿F(xiàn)FTP功能。 Windows本身帶有撥號(hào)網(wǎng)絡(luò)功能。由于撥號(hào)網(wǎng)絡(luò)不是一個(gè)可執(zhí)行 文件,所以不能用 " ...
本文介紹了Windows下如何在程序中加入撥號(hào)網(wǎng)絡(luò),如何自己編寫(xiě)
程序?qū)崿F(xiàn)FTP功能。
Windows本身帶有撥號(hào)網(wǎng)絡(luò)功能。由于撥號(hào)網(wǎng)絡(luò)不是一個(gè)可執(zhí)行
文件,所以不能用 " WinExec 可執(zhí)行文件"的方式來(lái)打開(kāi)。要啟動(dòng)撥
號(hào)網(wǎng)絡(luò),需要用 Explorer ,方法如下:
WinExec(‘Explorer::
{20D04FE0 3AEA 1069 A2D8 08002B30309D}\::
{992CFFA0-F557 101A 88EC 00DD010CCC48}',
SW_SHOWNA);
但若是要啟動(dòng)撥號(hào)網(wǎng)絡(luò)中的某一個(gè)連接,則需借助rundll.exe 及
rnaui.dll來(lái)啟動(dòng),方法如下(假定連接名稱為MyFtpNet):
WinExec(‘rundll rnaui.dll,RnaDial MyFtpNet',SW_SHOWNA);
這樣程序運(yùn)行到此命令時(shí),將會(huì)彈出撥號(hào)網(wǎng)絡(luò)連接MyFtpNet窗口,
輸入用戶名、密碼等信息即可登錄,如想更加方便,則可對(duì)此連接編寫(xiě)
腳本文件,不需要用戶輸入任何信息, 使程序自動(dòng)登錄。
在Delphi中具有可用的FTP控件,所以使FTP編程將會(huì)變得極其方
便。下面我們對(duì)編寫(xiě)FTP應(yīng)用的Form進(jìn)行設(shè)計(jì):
添加TNMFTP控件:NMFTP1
添加Label控件:Label1、Label2、Label3、Label4、Label5、La
bel6
Label1.Caption = ‘主機(jī)名稱'
Label2.Caption = ‘主機(jī)端口號(hào)'
Label3.Caption = ‘用戶名'
Label4.Caption = ‘用戶口令'
Label5.Caption = ‘代理服務(wù)器'
Label6.Caption = ‘代理端口號(hào)'
添加Edit控件:HostTxt(FTP主機(jī)名)、PortTxt(FTP主機(jī)端口)、U
serTxt(用戶名)、PassTxt(用戶口令)、ProxyServerTxt(代理服務(wù)器
地址)、ProxyPortTxt(代理服務(wù)器端口)
添加CheckBox控件:CheckBox1CheckBox1.Caption = ‘使用代理
服務(wù)器'
添加Button控件:Button1(連FTP主機(jī))、Button2(斷開(kāi)FTP主機(jī))
、Button3(列FTP目錄)
Button1.Caption = ‘連接'
Button2.Caption = ‘?dāng)嚅_(kāi)'
Button3.Caption = ‘列目錄'
將以上控件以友好界面方式在Form中進(jìn)行放置。
編寫(xiě)B(tài)utton1的Click事件為:
procedure TForm1.Button1Click(Sender: TObject);
begin
If CheckBox1.Checked then
Begin
NMFTP1.Proxy := ProxyserverTxt.Text;
NMFTP1.ProxyPort := StrToInt(ProxyportTxt.Text);
End;
NMFTP1.Host := HostTxt.Text;
NMFTP1.Port := StrToInt(PortTxt.Text);
NMFTP1.Timeout := 5000;
NMFTP1.UserID := UserTxt.Text;
NMFTP1.Password := PassTxt.Text;
try
NMFTP1.Connect;
except
On E:Exception do
writeln(E.message);
end
end;
編寫(xiě)B(tài)utton2的Click事件為:
procedure TForm1.Button2Click(Sender: TObject);
begin
NMFTP1.Disconnect;
end;
編寫(xiě)B(tài)utton3的Click事件為:
procedure TForm1.Button3Click(Sender: TObject);
begin
try
NMFTP1.List;
except
end;
end;
另外FTP控件還具有其他功能,如:MakeDirectory(創(chuàng)建目錄)、Re
moveDir(刪除目錄)、Rename(文件更名)、Delete(刪除文件)、Uploa
d(上載文件)、Download(下載文件)等,在此不再講述,大家如需要編
寫(xiě)這些功能,可自己增加。
本程序在Windows98+Delphi5.0下調(diào)試通過(guò)。