解决拨号连网导致的不能正常关机的问题
来源:互联网 发布:局域网禁止p2p软件 编辑:程序博客网 时间:2024/05/16 18:44
前几天老大说我们的机子拨号连网后,按关机键,机子会死掉,马上要出货了,必须解决。
检查发现,只要新建了拨号连接,打开界面后关机也会导致死机。其实系统就启动了一个RNAAPP的进程,结束了这个进程,怎么关机都可以。由此得知这个进程才是根源,代码估计没时间看了,因为看了一天也没看出什么来。只能从偏方着手,枚举rnaapp那个进程后,再结束他应该可行,可是并不然。一是驱动中实现这段代码,速度奇慢,并且不好引用TOOLHELP的库。
上午总算找到一个好方法了,那就是枚举出所有的网络连接,再把它们断掉,这个方法速度快,比平时关机延时一秒钟,客户应该可以接受的。
代码如下:
LPRASCONN pRasConn;
DWORD cb;
DWORD Connections;
DWORD dwRetVal = 0;
DWORD dwRetEnable = 0;
BYTE RasConnData[20*sizeof(RASCONN)];
TCHAR lpszEntryName[256] = {0};
pRasConn = (LPRASCONN) RasConnData;
pRasConn->dwSize = sizeof(RASCONN);
Connections = 0;
cb = 20 * sizeof (RASCONN);;
dwRetVal =RasEnumConnections(pRasConn, &cb, &Connections);
if(dwRetVal != 0)
{
RETAILMSG(1, (TEXT("[AUTODIAL] RasEnumConnections dwRetVal = %d!/r/n"),dwRetVal));
}
for (int i=0;i<(int)Connections;i++)
{
RasHangUp (pRasConn[i].hrasconn);
}
代码是从别处拷来的,谢谢原作者
- 解决拨号连网导致的不能正常关机的问题
- @maohoo Intellij idea 配置的备份,解决非正常关机导致环境配置丢失的问题
- 解决ubuntu能连网但不能更新数据源的问题
- Ubuntu及衍生系统不能正常重启关机问题的解决
- 解决UMEditor与bootstrap不兼容导致图片不能正常拖拽缩放的问题
- FlashBuilder4.7非正常关闭导致不能启动的解决
- FlashBuilder4.7非正常关闭导致不能启动的解决
- Windows98不能正常关机解决
- CentOS安装后不能连网的问题
- vmware非正常关机导致debian无法联网,提示connect: network is unreachable的解决
- 对于虚拟机连网问题的解决
- Ubuntu无法正常关机的解决
- Linux手工配置IP、网关及解决非正常关机导致ifup脚本丢失不能联网
- 非正常关机导致的开机很慢
- fedora linux 非正常关机 导致不能直接启动桌面问题
- 如何解决系统不能正常关机
- Ubuntu使用问题(一):Ubuntu不能正常关机的解决方法
- 解决使用struts2后servlet不能正常工作的问题
- [技术讨论]务实与务虚
- 2
- jasper reports - parameters for ‘in clause’
- 嵌入式系统设计缺陷案例
- fflush()函数介绍
- 解决拨号连网导致的不能正常关机的问题
- zhcon配置
- 2009-9-25基金:节后A股市场震荡上扬是主基调
- SQL中通配符、转义符与括号的使用
- sudoers文件配置(转)
- 打印
- HelloWord
- 关于XP安装了SQL2005无法打开SQL Server Configuration Manager
- Oracle9i客户端EXP导出高版本数据库中BLOB和CLOB大字段的问题