如何编程实现扩展右键菜单之三:调试Shell扩展DLL
来源:互联网 发布:大连新港716火灾知乎 编辑:程序博客网 时间:2024/05/15 10:54
在前两篇教程中,我们已经学会了如何在资源管理器的右键菜单中增加自己的菜单项,及如何将菜单分组为子菜单。在学习过程中,读者可能注意到,在VC中编译成功后,此时我们的扩展DLL已自动注册到系统中,此时Windows资源管理器将自动加载此文件,之后重新编译时,会提示该DLL文件正在被使用,无法覆盖,导致编译失败。本文将介绍如何解决这一问题。
首先,需修改如下注册表项:
HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/Explorer/AlwaysUnloadDLL
将该项的默认值修改为"1",该值指示资源管理器更频繁的释放不再使用的扩展DLL。
此外,在NT版的Windows中,还需在
HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Explorer
下创建一个名为DesktopProcess、类型为DWORD、值为1的参数。这个参数将每一个新打开的资源管理器运行在独立的进程中,这样我们就可以在项目设置中将我们的扩增DLL的调试进程设为c:/windows/explorer.exe,运行调试器进行调试。
如此设置后,我们如果发现因资源管理器载入了扩展DLL而导致无法编译,可以将此DLL反注册,然后关闭资源管理器窗口,过一会儿(最多2到3分钟)就可以编译覆盖了。如果这样还不行,则只能反注册扩展DLL后,注销当前用户,然后重新登录,保证资源管理器不载入我们的DLL。
- 如何编程实现扩展右键菜单之三:调试Shell扩展DLL
- 如何编程实现扩展右键菜单之二:使用子菜单
- 如何编程实现扩展右键菜单之一:增加自己的菜单项
- Windows外壳扩展编程之添加右键菜单
- Windows外壳扩展编程之添加右键菜单
- VC++ 外壳扩展编程之windows右键菜单
- Windows外壳扩展编程之添加右键菜单
- 转:VC++ 外壳扩展编程之windows右键菜单
- Windows外壳扩展编程之添加右键菜单
- VC++ 外壳扩展编程之windows右键菜单
- VC++ 外壳扩展编程之windows右键菜单
- VC++ 外壳扩展编程之windows右键菜单
- windows外壳扩展编程之windows右键菜单
- (转)VC++ 外壳扩展编程之windows右键菜单
- VC++ 外壳扩展编程之windows右键菜单
- VC++ 外壳扩展编程之windows右键菜单
- VC Windows shell扩展编程(为系统右键菜单添加二级菜单傻瓜教程)
- VC Windows shell扩展编程(为系统右键菜单添加二级菜单傻瓜教程)
- VC++技巧 在控制台程序中隐藏控制台窗口
- Java ME,我渐渐的忘记了,Java ME环境配置
- IO/HTML
- str2txt
- 300000 Item randomly get
- 如何编程实现扩展右键菜单之三:调试Shell扩展DLL
- Cannot create JDBC driver of class '' for connect URL 'null'
- 判断字符串是否对称
- IPMI 远程管理
- Oracle基本语法
- 学习css中的摘录
- 用jquey写的简单聊天窗口的例子
- rpm小述
- Oracle创建表