我正在开发一个shell扩展,它应该显示存储在虚拟驱动器上的文件(大多数是.jpgs)的扩展属性(将其视为外部硬盘)。
是否可以注册shell扩展,只能为特定文件夹/驱动器的文件(在我的情况下是外部硬盘驱动器)启动,并将其他文件夹中的jpgs处理留给Windows默认的shell扩展?
此致
塞巴斯蒂安
答案 0 :(得分:1)
本文列出了可以注册shell扩展的方法:http://msdn.microsoft.com/en-us/library/cc144096(VS.85).aspx。
您应该能够在外部硬盘上创建一个系统文件夹,其中包含指向您的扩展程序的desktop.ini文件。
或者,在扩展程序本身内,您可以检查路径,如果它不在您指定的位置,则不执行额外的逻辑。
答案 1 :(得分:0)
据我所知,注册表中的shell扩展注册,没有“将其限制到某个文件夹”这样的事情。您的扩展程序必须在全局注册,并且在不合适时不会显示其他上下文菜单项的方式实现。
在注册表中,shell扩展绑定到CLASSES_ROOT键中的文件类型。整个过程旨在以文件为中心。所以文件类型分辨率是你能得到的最好的。看看它,其他一切(如给定文件的路径/驱动器/驱动器类型)将太易于使基础上的扩展注册成为一个明智的事情。