明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

編程完成撥號(hào)網(wǎng)絡(luò)連接及FTP應(yīng)用

[摘要]本文介紹了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ò)。