2011-11-09 69 views
1

我试图在Windows资源管理器上下文菜单上执行一些复杂的操作。Windows资源管理器 - 删除上下文菜单中的条目

我有一个编码过程,我想调用任何类型的文件。 这个想法是右键单击一个文件,在上下文菜单中获取选项,然后选择。 这是比较容易做到:

HKCR "*\shell\encoding" "" "Encode with MyEncoder"

它的工作原理。 编码器生成* .encode扩展文件。 我想使用相同的机制解码这些文件。 这也很简单:

HKCR ".encode" "" "encoded.file"

HKCR "encoded.file\shell\decode" "" "Decode with MyEncoder"

所以,现在的基本机制是到位:编译使用上下文菜单中的任何文件,也使用上下文菜单解码这些文件。

现在的问题:

的问题是:“编码与MyEncoder”选项也出现在* .encode文件。这似乎是可以理解的,因为这个选项已经可用于任何文件类型。但是,如果文件扩展名为* .encode,我不希望此选项有效。

这样做有可能,如果是的话,怎么样?

回答

2

You can use Advanced Query Syntax to conditionalize your menu。例如,AppliesTo = NOT System.FileExtension:=.encode

+1

既然你是在这里,我应该知道比回答这样的问题更好。我应该等到你能做到,并得到正确的答案! –

+1

@DavidHeffernan别担心。这是一个相对较新的功能,所以我并不感到惊讶,人们并不熟悉它。 –

+0

@雷蒙德:有趣。此语法仅对Windows 7有效吗? – Cyan

相关问题