要做一个拨号通讯的程序,并且比较急,请各位帮忙理一下思路和实现方法。不胜感谢!希望大家集思广益!

解决方案 »

  1.   

    Windows本身带有拨号网络功能。由于拨号网络不是一个可执行 
    文件,所以不能用 " WinExec 可执行文件"的方式来打开。要启动拨 
    号网络,需要用 Explorer ,方法如下: 
        WinExec(‘Explorer:: 
        {20D04FE0 3AEA 1069 A2D8 08002B30309D}\:: 
        {992CFFA0-F557 101A 88EC 00DD010CCC48}', 
        SW_SHOWNA); 
        但若是要启动拨号网络中的某一个连接,则需借助rundll.exe 及 
     rnaui.dll来启动,方法如下(假定连接名称为MyFtpNet): 
        WinExec(‘rundll rnaui.dll,RnaDial MyFtpNet',SW_SHOWNA); 
        这样程序运行到此命令时,将会弹出拨号网络连接MyFtpNet窗口, 
    输入用户名、密码等信息即可登录,如想更加方便,则可对此连接编写 
    脚本文件,不需要用户输入任何信息, 使程序自动登录。 
        在Delphi中具有可用的FTP控件,所以使FTP编程将会变得极其方 
    便。下面我们对编写FTP应用的Form进行设计: 
        添加TNMFTP控件:NMFTP1 
        添加Label控件:Label1、Label2、Label3、Label4、Label5、La 
    bel6 
        Label1.Caption = ‘主机名称' 
        Label2.Caption = ‘主机端口号' 
        Label3.Caption = ‘用户名' 
        Label4.Caption = ‘用户口令' 
        Label5.Caption = ‘代理服务器' 
        Label6.Caption = ‘代理端口号' 
        添加Edit控件:HostTxt(FTP主机名)、PortTxt(FTP主机端口)、U 
    serTxt(用户名)、PassTxt(用户口令)、ProxyServerTxt(代理服务器 
    地址)、ProxyPortTxt(代理服务器端口) 
        添加CheckBox控件:CheckBox1CheckBox1.Caption = ‘使用代理 
    服务器' 
        添加Button控件:Button1(连FTP主机)、Button2(断开FTP主机) 
    、Button3(列FTP目录) 
        Button1.Caption = ‘连接' 
        Button2.Caption = ‘断开' 
        Button3.Caption = ‘列目录' 
        将以上控件以友好界面方式在Form中进行放置。 
        编写Button1的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; 
        编写Button2的Click事件为: 
        procedure TForm1.Button2Click(Sender: TObject); 
        begin 
        NMFTP1.Disconnect; 
        end; 
        编写Button3的Click事件为: 
        procedure TForm1.Button3Click(Sender: TObject); 
        begin 
        try 
        NMFTP1.List; 
        except 
        end; 
        end; 
        另外FTP控件还具有其他功能,如:MakeDirectory(创建目录)、Re 
    moveDir(删除目录)、Rename(文件更名)、Delete(删除文件)、Uploa 
    d(上载文件)、Download(下载文件)等,在此不再讲述,大家如需要编 
    写这些功能,可自己增加。 
        本程序在Windows98+Delphi5.0下调试通过。