在利用程序中实现RAS拨号[VC/C++编程]
本文“在利用程序中实现RAS拨号[VC/C++编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
远程拜候服务(RAS)是WindowsNT操作系统供应的系统服务之一,通过电话线可以使单独的计算机接入网络,或通过两个RAS对拨使两个局域网互连.此项服务的功效可以使远程的计算机端点以较低的费用同网络衔接.
由于WindowsNT操作系统的大量利用,远程拜候服务功效也被遍及利用,在很多具体的利用程序中,均已通过远程拜候服务来实现对远程的资源同享等功效.连通远程拜候服务,只要从远程客户机拨通拨号网络便可以了,履行挂断就完毕衔接,鼠标操作Windows95中的拨号网络可以直接拨通和挂断.但有些时刻我们但愿在利用程序中RAS拨号和挂断对用户不可见,那么就需求呼应的程序掌握来实现RAS拨通和挂断.
Windows95供应了API函数RasDial,调用系统中建好的拨号网络衔接,完成RAS拨号,同时还供应了API函数RasHangUp断开衔接.RasDial的原形以下:
DWORD RasDial(LPRASDIALEXTENSIONS IpRasDialExtensions,LPTSTR IpszPhonebook,LPRASDIALPARAMS IpRasDialParams,DWORD dwNotifierType,LPVOID IpvNotifier,LPHRASCONN IphRasConn)
此函数的第3个参数为指向RASDIALPARAMS型构造体的指针,它供应了配置RAS拨号的参数;第5个参数为拨号完成后履行的回调函数;第6个参数是LPHRASCONN型的指针,拨号衔接成立好之后将返回此衔接的句柄;其他3个参数为NULL便可.函数调用假如成功将返回零,不然返回错误代码,此错误代码的含义可以在头文件Raserror.h中查到.
RASDIALPARAMS型构造体包含7个数据成员:dwSize、szEntryName、szPhoneNumber、szCallbackNumber、szUserName、szPassword和szDomain,它们的作用如右表所示.
要挂断已拨通的衔接利用RasHangUp函数,需求的参数是此衔接的衔接句柄.下面介绍利用VC完成RAS拨号的一个例子,此中我们假定RAS端NT服务器衔接的内部份机的电话号码是"22",具体步骤以下:
1.配置好调制解调器,然后在Windows95的拨号网络中成立一个名为dial的衔接.
2.成立一个VisualC的利用框架,在Setting中为利用程序加入Rasapi32.lib静态库.
3.新建一个对话框,在其上加两个按钮,一个用于拨通,一个用于挂断.
4.在鼠标点击拨通按钮的呼应函数中加入以下代码:
RASDIALPARAMS rdParams;
DWORD dwRet;
rdParams.dwSize=sizeof(RASDIALPARAMS);
strcpy(rdParams.szEntryName,"dial");
strcpy(rdParams.szPhoneNumber,"22");
strcpy(rdParams.szCallbackNumber,"*");
strcpy(rdParams.szUserName,"dial");
rdParams.szPassword[0]='\0';
strcpy(rdParams.szDomain,"dial");
hRasConn=NULL;
dwRet=RasDial(NULL,NULL,&rdParams,0L,(RASDIALFUNC)RasDialFunc,&hRasConn);
if(dwRet!=0)
{
//dealwitherror…
}
5.在此呼应函数之前加入以下代码:
VOID WINAPI RasDialFunc(UINT unMsg,RASCONNSTATE rasconnstate,DWORD dwError)
{
}
以上是“在利用程序中实现RAS拨号[VC/C++编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |