
Windows 8 新增了 Metro 應用程式。由於 Metro 應用程式的運作方式與其他程式不同,因此檔案關聯似乎與其他程式不同。文件在 Windows 中是如何關聯的?
答案1
預設開啟類型在使用者選擇鍵下指示:HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\FileExts\\.[desiredFileExtension]\\UserChoice\\ProgId
如果該鍵不存在則預設:HKEY_CLASSES_ROOT\\.[desiredFileExtension]\\(default)
然後必須檢查此類型以確定如何處理它,它被簽入:HKEY_CLASSES_ROOT\\[openingType]\\shell
這裡的預設值應該告訴你在 shell 下使用了什麼動詞,例如:HKEY_CLASSES_ROOT\\[openingType]\\shell\\open
運行的命令位於:HKEY_CLASSES_ROOT\\[openingType]\\shell\\[verb]\\command
如果該指令不是 DelegateExecute,那麼您就完成了!是的,否則你必須繼續挖掘......
動詞下應包含ActivatableClass和PackageId:HKEY_CLASSES_ROOT\\[openingType]\\shell\\[verb]\\ActivatableClassId HKEY_CLASSES_ROOT\\[openingType]\\shell\\[verb]\\PackageId
記住這些值並在以下位置檢查該值:HKEY_CLASSES_ROOT\\ActivatableClasses\\Package\\[PackageId Value]\\ActivatableClassId\\[ActivatableClassId Value]\\Server
最後檢查HKEY_CLASSES_ROOT\\ActivatableClasses\\Package\\[PackageId Value]\\Server\\[Server Value]\\EXEPath
現在您/Windows 知道什麼應用程式與所需的檔案類型相關聯!容易吧?
注意:我在手動檢查註冊表大約一周後發現了這一點,並認為如果有人再次需要它,我應該將其發佈在這裡。如果我遺漏了什麼或說錯了什麼,請告訴我。