如何創建採用動態 字符串的Windows資源管理器命令欄工具?使用Dynamic Verb將自定義工具添加到Windows命令欄
我已經知道如何將我的工具添加到命令欄並單擊執行該命令。
但我需要後,如第二個工具欄組織。
我需要的,當我點擊我的工具的文件名是這樣我的工具 - 文件名(selected.txt)或我的工具 - 選定的文件擴展名文件(.txt)。
有沒有人有關於如何做到這一點的想法?
如何創建採用動態 字符串的Windows資源管理器命令欄工具?使用Dynamic Verb將自定義工具添加到Windows命令欄
我已經知道如何將我的工具添加到命令欄並單擊執行該命令。
但我需要後,如第二個工具欄組織。
我需要的,當我點擊我的工具的文件名是這樣我的工具 - 文件名(selected.txt)或我的工具 - 選定的文件擴展名文件(.txt)。
有沒有人有關於如何做到這一點的想法?
1)創建一個shell擴展。你的shell擴展必須實現IInitializeCommand,IObjectWithSite,IObjectWithSelection,IExplorerCommand和IExplorerCommandState。
2)註冊您的外殼擴展:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\YourCommandID]
@=YourTopCommandCaption
ExplorerCommandHandler=YourCLSID
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FolderTypes\{5c4f28b5-f869-4e84-8e60-f11db97c5cc7}\TasksItemsSelected]
@=YourCommandID
如果TasksItemsSelected鍵的默認值不爲空,您必須新的字符串添加到老!例如,prev值是Windows.copy,新的必須是Windows.copy; YourCommandID
{5c4f28b5-f869-4e84-8e60-f11db97c5cc7}是FOLDERTYPEID_Generic。
3)IExplorerCommand.GetFlags必須返回ECF_HASSUBCOMMANDS或ECF_ISDROPDOWN
4)IExplorerCommand.EnumSubCommands必須返回對象實現IEnumExplorerCommand
5)IEnumExplorerCommand.Next必須返回對象實現IExplorerCommand,的IObjectWithSite和IObjectWithSelection。每個對象都是子菜單的單個命令。
它只適用於Win7。
此外,還必須有一種方法,如何在那裏添加圖標 – GeekUser 2014-10-11 10:13:52