2012-08-09 58 views
0

我想添加一個條目到右鍵單擊菜單,該菜單隻有在右鍵單擊.exe或.msi文件時纔會出現。如果該條目被選中,exe文件將被執行(如Open),但是具有固定的文本字符串作爲其參數。用參數右擊「打開」

我想這應該是可能的註冊表項 - 任何想法如何做到這一點?

回答

3

對於.exe文件,你可以在註冊表中的以下內容:

  1. HKEY_Classes_Root,找到關鍵.exe
  2. 閱讀(Default)
  3. (這通常exefile是)在HKEY_Classes_Root,發現鍵exefile(或任何你在步驟2中找到的)
  4. 根據exefile\shell創建一個新的密鑰,名稱與wha匹配T優要在上下文菜單中看到(比如,「打開我的應用」)
  5. 在新的密鑰,創建一個名爲新密鑰command
  6. 將此鍵設置到要執行任何命令行的(Default)值。您單擊的文件的名稱可以使用標記%1輸入。因此,例如,您可以將該值設置爲notepad.exe %1以在記事本中編輯可執行文件。

一個類似的模式也適用於其他類型的文件工作。

+0

謝謝。但這不完全是我的意思。我想實際執行點擊的exe或msi文件並傳遞一個固定的字符串作爲它的參數。因此,如果右鍵單擊的文件是blah.exe,那麼我想要執行blah.exe MYARG。這裏是一個開放\命令項,這是「%1」%*,這似乎是我想要什麼差不多,所以我把我的新條目「%1」 MYARG但根據ProcessExplorer exe文件被不帶任何參數執行。任何想法我的命令條目有什麼問題? – appleton 2012-08-09 11:29:33

+0

據我所知,您的輸入是正確的。你有沒有試過這個與測試應用程序,看看有什麼傳遞? – 2012-08-09 11:41:49

+0

對不起,我在Process Explorer中查看錯誤的exe文件! 「%1」MYARG效果很好。謝謝。 – appleton 2012-08-09 11:57:10

0
Windows Registry Editor Version 5.00 

[HKEY_CLASSES_ROOT\.exe\shell\Copy Address\command] 
@="C:\\Windows\\CopyAddress.exe %1 " 

[HKEY_CLASSES_ROOT\.msi\shell\Copy Address\command] 
@="C:\\Windows\\CopyAddress.exe %1 " 

根據您的選擇更改路徑和菜單名稱(CopyAddress)。