Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Menentukan Aplikasi Lalai Secara Pengaturcaraan untuk Jenis Fail dalam Windows?
Mendapatkan semula Aplikasi Lalai untuk Jenis Fail dalam Windows
Untuk menentukan aplikasi lalai untuk membuka fail jenis tertentu, anda boleh menggunakan Windows Registry. Dalam HKEY_CLASSES_ROOT, setiap sambungan fail mempunyai kunci yang sepadan. Aplikasi lalai disimpan dalam nilai Lalai kunci ini.
Pertimbangkan contoh berikut untuk membuka fail HTML:
Kaedah ini, bagaimanapun, mempunyai had. Ia bergantung pada pelaksanaan pendaftaran, yang mungkin berbeza merentas versi Windows. Pendekatan yang lebih dipercayai melibatkan fungsi Win32 API AssocQueryString.
AssocQueryString
AssocQueryString membolehkan anda menanyakan aplikasi lalai untuk fail tertentu taip.
Sintaks:
uint AssocQueryString( AssocF flags, AssocStr str, string pszAssoc, string pszExtra, [Out] StringBuilder pszOut, ref uint pcchOut );
Bendera:
Str:
Contoh:
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."); }
Pendekatan ini menyediakan cara yang lebih dipercayai untuk menentukan aplikasi lalai untuk jenis fail dalam Windows.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menentukan Aplikasi Lalai Secara Pengaturcaraan untuk Jenis Fail dalam Windows?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!