只在XP下用过RasDial调用系统API来实现拨号上网,
不知道是否可以把代码直接在WIN7下使用?
不知道是否可以把代码直接在WIN7下使用?
解决方案 »
- 一个C/S程序 下拉列表默认值问题
- c#中关于在线视频点播的问题(引用播放视屏)
- [Help]智能手机一般用来做些方面的系统开发?
- 如何根据窗体句柄获得该窗体的位置坐标?
- 制定 “特性” 的问题,为什么 “特性” 没有发生呢? {初学帖}
- 不使用数据库,如何往gridview中追加行
- IHTML的接口为什么分2、3、4之类的,有什么区别?
- 关于线程同步的问题。请指点一下。不爽几天了,顶者有分
- c#和c++用socket通讯出现问题,高手进来看看
- 如何用C#编程将word、zip或者pdf格式的文件存储在SQL2008数据库中
- 反射,如何传递不同类型参数组
- 如果在静态变量改变时,更新非静态变量?
bool DialUp()
{
RASDIALPARAMS rdParams;
rdParams.dwSize = sizeof(RASDIALPARAMS);
//设置宽带连接名称
lstrcpy(rdParams.szEntryName, "adsl"); //设置用户名和密码
lstrcpy( rdParams.szUserName, m_strUserName );
lstrcpy( rdParams.szPassword, m_strPassword );
rdParams.szPhoneNumber[0]='\0';
rdParams.szCallbackNumber[0] = '\0';
rdParams.szDomain[0] = '\0';
HRASCONN hRasConn = NULL;
DWORD dwRet = RasDial( NULL, "rasphone.pbk", &rdParams, 0L, NULL, &hRasConn );
if ( dwRet == 0 )
{
return true;
}
char szBuf[256];
if ( RasGetErrorString( (UINT)dwRet, (LPSTR)szBuf, 256 ) != 0 )
wsprintf( (LPSTR)szBuf, "Undefined RAS Dial Error (%ld).", dwRet );
RasHangUp( hRasConn );
return false;
}//断开网络
bool HangUp()
{
RASCONN ras[20];
DWORD dSize, dNumber;
char szBuf[256];
ras[0].dwSize = sizeof( RASCONN );
dSize = sizeof( ras );
DWORD dwRet = RasEnumConnections( ras, &dSize, &dNumber );
if ( dwRet != 0 )
{
if ( RasGetErrorString( (UINT)dwRet, (LPSTR)szBuf, 256 ) != 0 )
wsprintf( (LPSTR)szBuf, "Undefined RAS Enum Connections error (%ld).", dwRet );
MessageBox( (LPSTR)szBuf, "RasHangUp", MB_OK | MB_ICONSTOP );
return false;
}
bool bOK = true;
for( DWORD dCount = 0; dCount < dNumber; dCount++ )
{
HRASCONN hRasConn = ras[dCount].hrasconn;
DWORD dwRet = RasHangUp( hRasConn );
if ( dwRet != 0 )
{
char szBuf[256];
if ( RasGetErrorString( (UINT)dwRet, (LPSTR)szBuf, 256 ) != 0 )
wsprintf( (LPSTR)szBuf, "Undefined RAS HangUp Error (%ld).", dwRet );
bOK = false;
}
}
return bOK;
}