檢索Windows 中檔案類型的預設應用程式
要確定開啟特定類型檔案的預設應用程式,您可以使用Windows 註冊表。在HKEY_CLASSES_ROOT中,每個檔案副檔名都有一個對應的鍵。預設應用程式儲存在此鍵的預設值中。
請考慮以下開啟HTML 檔案的範例:
但是,此方法有其限制。它依賴於註冊表的實現,這可能因 Windows 版本而異。更可靠的方法涉及 Win32 API 函數 AssocQueryString。
AssocQueryString
AssocQueryString 可讓您查詢特定檔案的預設應用程式類型。
語法:
uint AssocQueryString( AssocF flags, AssocStr str, string pszAssoc, string pszExtra, [Out] StringBuilder pszOut, ref uint pcchOut );
標誌:
Str:
範例:
using System.Runtime.InteropServices; [DllImport("Shlwapi.dll", CharSet = CharSet.Unicode)] public static extern uint AssocQueryString( AssocF flags, AssocStr str, string pszAssoc, string pszExtra, [Out] StringBuilder pszOut, ref uint pcchOut ); AssocF flags = AssocF.Open_ByExeName; AssocStr str = AssocStr.Command; StringBuilder sb = new StringBuilder(); uint pcchOut = 0; uint ret = AssocQueryString(flags, str, ".txt", null, sb, ref pcchOut); if (ret == 0) { Console.WriteLine($"Default text editor: {sb.ToString()}"); } else { Console.WriteLine("Error retrieving default text editor."); }此方法提供了更可靠的方法來確定Windows 中文件類型的預設應用程式。
以上是如何以程式設計方式確定 Windows 中文件類型的預設應用程式?的詳細內容。更多資訊請關注PHP中文網其他相關文章!