右鍵選單中的批次文件

右鍵選單中的批次文件

我正在製作一個將加密訊息的批次檔。我做到了,當我右鍵單擊該物件並單擊“測試”按鈕時,它會運行批次檔。

regedit我添加

Computer\HKEY_CLASSES_ROOT\*\shell\Test\command

命令的數據是

C:\Users\%username%\Desktop\encrypt.bat

我需要對資料(在我新增的註冊表項中)執行什麼操作以及它在我的變數中儲存什麼?

答案1

您需要將要在該類型上啟動的腳本與該文件類型相關聯。在Windows上,這一切都是基於擴展的(至少在XP上,我不知道7,但我懷疑它已經改變)。假設您的檔案副檔名是“.abc”,您的應用程式是:

c:\program files\dummy\process.bat

(我暫時刪除了該變量,我不確定它在 .reg 檔案中的行為如何)

因此,只需編輯一個包含以下內容的 config.reg 文字檔案:

Windows Registry Editor Version 5.00

; the extension .abc gets associated with a file type
[HKEY_CLASSES_ROOT\.abc]
@="abc-file"

; the file-type gets a name (that appears in explorer in field "type")
[HKEY_CLASSES_ROOT\abc-file]
@="foo file"

; What will appear in the contextual menu when selecting an .abc file
[HKEY_CLASSES_ROOT\abc-file\shell\cmdname-1]
@="--- Process ! ----"

; What to do with it
; here, %1 is the file given as argument of the script
[HKEY_CLASSES_ROOT\abc-file\shell\cmdname-1\command]
@="\"c:\\program files\\dummy\\process.bat\" \"%1\""

最後導入即可。你完成了。

補充評論:

  • 所有奇怪的引號和反斜線都是為了正確處理帶有空格的名稱。是的,我現在,沒有人在檔案名稱中包含空格。無論如何,這種事發生了!
  • 當然,您可以對一種文件類型使用多個命令。只要複製 .reg 的最後兩個鍵(cmdname-1 ==> cmdname-2)
  • 您也可以將不同的檔案副檔名關聯到相同檔案類型。例如,HTML 檔案可以有 .htm 或 .html
  • 您甚至可以將操作與資料夾關聯。將檔案類型替換為“資料夾”
  • 提供“卸載”功能可能很有用。只需建立另一個 reg 檔案並在建立的金鑰前加上「-」前綴即可。

相關內容