2011-11-09 36 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

相關問題