我在開發“.prt”檔案的右鍵單擊上下文功能表時遇到了一個小問題。我按照建議做了一切,但得到了一個非常奇怪的結果——菜單沒有出現。如果我處理不同的檔案副檔名,一切都會很好,選單會出現,但選單*.prt
不起作用。 *.prt 檔案有什麼特別之處?有reg文件:
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Classes\prt_auto_file]
@=""
[HKEY_CURRENT_USER\Software\Classes\prt_auto_file\shell]
[HKEY_CURRENT_USER\Software\Classes\prt_auto_file\shell\Convertto]
@="Convert to"
[HKEY_CURRENT_USER\Software\Classes\prt_auto_file\shell\Convertto\command]
@=...
[HKEY_CURRENT_USER\Software\Classes\prt_auto_file\shell\open]
[HKEY_CURRENT_USER\Software\Classes\prt_auto_file\shell\open\command]
@=...
答案1
您應該HKEY_CLASSES_ROOT
全域使用而不是HKEY_CURRENT_USER
僅限於當前使用者使用。似乎您忘記.prt
在定義的處理程序中包含擴展名:
[HKEY_CLASSES_ROOT\.prt]
@="prt_auto_file"
嘗試使用如下所示的新程式碼:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\.prt]
@="prt_auto_file"
[HKEY_CLASSES_ROOT\prt_auto_file]
@=""
[HKEY_CLASSES_ROOT\prt_auto_file\shell]
@="open"
[HKEY_CLASSES_ROOT\prt_auto_file\shell\Convertto]
[HKEY_CLASSES_ROOT\prt_auto_file\shell\Convertto\command]
@="address\\to\\convertor\\application.exe"
[HKEY_CLASSES_ROOT\prt_auto_file\shell\open]
[HKEY_CLASSES_ROOT\prt_auto_file\shell\open\command]
@="address\\to\\default\\application.exe"