你用VC调试程序时经常死机吗

TNTGina - 你用VC调试程序时经常死机吗
大 | 中 | 小
[ 不指定 2006/05/31 12:41 | by Yonsm ]
如果是,而且又不想忍受漫长的注销过程,试试看这个 Gina 吧——TNTGina——用于 Terminate MSVC 的 NTGina。
  • 缘起:
    VC 在调试多线程程序(GraphEdit 调试 DShow Filter 时,基本上都是)的时候经常死机,特别是在 Windows XP 中。
    此时按 Ctrl+Alt+Del 有效,但唤出任务管理器后,却无法操作。只好作注销或重启处理:(
  • 注册:
    保存到系统登录时能访问到的路径上,用 RegSvr32.exe TNTGina.dll 注册它。重新启动系统后才能生效。
    (这不是一个COM组件,只不过为了注册和注销方便,导出了两个函数,里面其实只是写了注册表的一个键值,改写了GinaDLL的路径)。
  • 注销:
    RegSvr32.exe /u TNTGina.dll
  • 用法:
    注册这个 Gina 后,问题就接解决了——虽然不能从根本上解决问题——不能防止VC死掉——但却可以:
    按亮 ScrollLock,然后按 Ctrl+Alt+Del,MSVC 马上被终止掉,系统恢复用户界面响应。重新打开VC调试吧……
  • 原理:
    这是一个 Gina DLL,Gina 是负责处理系统登录等用户界面操作的DLL,且 MS 允许用户重写它。
    于是我写了这个 DLL,处理了 SrcollLock 高亮状态下的 Ctrl+Alt+Del 安全事件,并强制终止 MSVC 进程。
    对于其它情况处理,则转交给原来的 MSGina.dll。
  • 后话:
    这个 DLL 是使用 AheadLib 自动生成的,然后添加了一点操作代码。
  • 下载:
    TNTGina (包括代码)
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值