將右鍵單擊目標傳遞給右鍵選單中的上下文相關應用程式

將右鍵單擊目標傳遞給右鍵選單中的上下文相關應用程式

我想在 Windows 7 中建立一個上下文相關的右鍵單擊上下文功能表選項,並且可以將特定文件/資料夾的名稱傳遞給 shell 腳本。

我知道這一定是可能的- 例如,如果您有一個7zip 文件,您可以右鍵單擊它,然後說“在此處提取”,然後目標(.7z 存檔)就會以某種方式傳遞給7zip 程序。

特別是,我有一個腳本,它接受 .c 檔案並將其填充到 LaTeX 清單中,並執行 pdflatex 來產生格式良好的檔案以供閱讀。但是,我必須將該文件指定為命令列參數。我想做的是,這樣我就可以右鍵單擊一個檔案並自動執行此腳本,將右鍵單擊目標的路徑自動傳遞到命令列參數。

答案1

歡迎來到超級用戶!

這將需要註冊表編輯來完成,這取決於您是否要為所有文件、僅特定擴展名的文件、資料夾或兩者添加此項目。

開啟登錄編輯程式並導航至HKEY_CLASSES_ROOT.您會在這裡看到一堆檔案副檔名 - 這是控制上下文選單的內容。

無論您將該選單項目附加到什麼位置,新增處理程序都是相同的過程,重要的是您將其放在註冊表中的位置。

流程如下:

  1. shell在您要新增的內容的密鑰下建立一個新密鑰。
  2. 如果您希望此選單項目具有圖標,請新增名為Icon您剛剛建立的鍵的字串,並將圖標的路徑作為值。
  3. 新增密鑰在下面您建立的項目名為command
  4. 修改此鍵下的(預設)條目以指向要開啟的腳本,在"%1"傳遞給程式的檔案名稱應位於其命令列中的位置新增。

至於這個新選單項目該放在哪裡?如果你想讓它顯示...

  • 對於某一副檔名的所有文件,將其放在符合的副檔名下(如果不存在,可以建立一個)。
  • 對於所有地方的文件,將其放在*密鑰下
  • 對於所有目錄,將其放在該Directory鍵下。

相關內容