会员: 密码:  免费注册 | 忘记密码 | 会员登录 网页功能: 加入收藏 设为首页 网站搜索  
技术文档 > VC文档 > 网络通讯
在使用Internet后挂断线路
发表日期:2003-05-28 00:00:00作者: 出处:  

WinInet API提供的功能很强大,但是当关闭掉Internet事务却不能关闭掉dial up连接。在WinInet API中没有提供相应的函数完成该功能。

解决方法:

RAS API可以通过调用RasHangUp(...)关闭连接,但是需要RAS句柄。有两种方法可以得当RAS句柄:1、自己建立RAS连接是保存该句柄,但这样做对与解决当前提出的问题是没必要的,2、通过RasEnumConnections(...)列举所有句柄。

所需环境:

RASAPI32.DLL,该连接库在安装播号网络时会自动安装。

RAS.H

RASAPI32.LIB

示范代码:

// Quit a dial up connection - rasapi32.lib und #include "ras.h" needed

bool DisconnectRas()

{

  bool bOk = false;

  RASCONN ras[20];

  DWORD dSize,dNumber,dCount;

  ras[0].dwSize = sizeof(RASCONN);

  dSize = sizeof( ras );

  // Get active RAS - Connection

  if( RasEnumConnections( ras, &dSize, &dNumber ) == 0 )

  {

   bOk = true;

   for( dCount = 0; dCount < dnumber; dCount++ )

   {

     // Hang up that connection

     if( RasHangUp(ras[dCount].hrasconn) != 0 )

     {

      bOk = false;

      break;

     }

   }

  }

  return bOk;

}

返回顶部】 【打印本页】 【关闭窗口

关于我们 / 给我留言 / 版权举报 / 意见建议 / 网站编程QQ群   
Copyright ©2003- 2024 Lihuasoft.net webmaster(at)lihuasoft.net 加载时间 0.00385