分享

在程序中拨号

 quasiceo 2014-07-22

 在程序中拨号


用拨号连接拨号的RasAPI函数为RasDial,其函数原型为:
function RasDial(pRasDialExtensions : LPRASDIALEXTENSIONS;//在WIN9X下无用,可
设置为NIL
lpszPhonebook : PChar;//电话本名称,在Win9X下无作用,可为空字符串
lpRasDialParams : LPRASDIALPARAMS;//拨号参数
dwNotifierType : DWORD;//消息通知方式
handle : TRasDialFunc;//消息处理事件
var lphRasConn : DWORD//返回的成功连接的连接句柄
) : DWORD; stdcall;
function RasDial;external RasApiDll name 'RasDialA';

    参数pRASDIALPARAMS的说明同RasGetEntryDialParams.
    参数dwNotifierType表示消息通知方式.在拨号过程中,
系统发出拨号事件消息可以通知拨号
  进度,因而需要提供接受消息的方式和处理消息的函数.当其
值为$FFFFFFFF时,则参数handle被
  视为一个窗口的句柄,事件消息被发生该窗口处理;当其值为0
时,handle被视为TRasDialFunc类型
  的函数的指针;当其值为1时,handle被视为TRasDialFunc1类
型的函数的指针.
    参数handle表示消息处理函数指针,其类型可以THandle、
TRasDialFunc、TRasDialFunc1.当该
  参数不为NULL或NIL时,其代表的消息处理函数指针将接受拨号
进度通知消息;为NIL时,拨号过程由
  异步方式变为同步方式,直到拨号过程成功或失败后RasDial函
数才返回.详细可参见Delphi帮助文件
  中关于RasDial函数的帮助。
    当拨号连接成功时,lphRasConn将表示其连接句柄.

    函数返回值为0表示执行成功;否则为错误代码.
    下面是一个应用例子,按指定的拨号参数拨号.

var
RASDIALPARAMSData : RASDIALPARAMS;
dwResult : DWord;
RasCon : DWord;
begin
//指定拨号连接的拨号参数
with RASDIALPARAMSData do
begin
dwSize := sizeof( RASDIALPARAMS );//结构大小
szEntryName := '163';//指定拨号连接的名称
szUserName := 'MyName';//指定用户名称
szPassword := 'MyPassword';//指定用户密码
szDomain := 'MyDomain';//指定域名
szCallbackNumber := '';//指定回叫号码
szPhoneNumber := '';//指定拨号号码
end;

//用指定的拨号参数拨号,采用同步拨号方式
dwResult := RasDial( NIL,'',@RASDIALPARAMSData,0,NIL,RasCon 
);

if dwResult < >  0 then //设置指定拨号连接的拨号参数失败
memo1.lines.add( '用'+StrPAS(RASDIALPARAMSData.szEntryName 
)+'拨号失败:' 
+ GetRasError( dwResult ))
else
memo1.lines.add( '用'+StrPAS(RASDIALPARAMSData.szEntryName 
)+'拨号成功!' );
end
 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多