Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah C Registry Keys Boleh Mengaitkan Sambungan Fail dengan Aplikasi?

Bagaimanakah C Registry Keys Boleh Mengaitkan Sambungan Fail dengan Aplikasi?

Susan Sarandon
Susan Sarandonasal
2024-11-22 11:04:16220semak imbas

How Can C   Registry Keys Associate File Extensions with Applications?

Cara Mengaitkan Sambungan Fail dengan Aplikasi menggunakan Kekunci Pendaftaran C

Latar Belakang

Pelanjutan fail boleh dikaitkan dengan aplikasi tertentu, membolehkannya dilancarkan apabila fail dengan sambungan itu diklik dua kali. Dalam C , ini boleh dicapai dengan mencipta entri pendaftaran.

Mencipta Entri Pendaftaran

Untuk mengaitkan sambungan fail dengan aplikasi, dua entri pendaftaran diperlukan:

  • ProgID: Mewakili jenis fail, mentakrifkan sifat seperti ikon dan penerangan.
  • Sambungan Nama Fail: Memautkan sambungan kepada ProgID.

Fungsi Pendaftaran::SetValue boleh digunakan untuk menetapkan nilai ini. Pastikan kekunci dibuat dalam sarang yang betul (HKEY_CURRENT_USERSoftwareClasses) untuk tetapan setiap pengguna, bukannya HKEY_CLASSES_ROOT, yang mungkin mengakibatkan isu keutamaan.

Kod Contoh

Registry::SetValue(
    @"HKEY_CURRENT_USER\Software\Classes\blergcorp.blergapp.v1\shell\open\command",
    nullptr,
    @"c:\path\to\app.exe ""%1"""
);
Registry::SetValue(@ "HKEY_CURRENT_USER\Software\Classes\.blerg", nullptr, "blergcorp.blergapp.v1");

Pendaftaran Pembersihan

Menyahpasang aplikasi tidak secara automatik mengalih keluar masukan pendaftaran yang berkaitan. Walau bagaimanapun, utiliti pembersih pendaftaran atau pemadaman kekunci secara manual boleh menyelesaikan isu ini.

Atas ialah kandungan terperinci Bagaimanakah C Registry Keys Boleh Mengaitkan Sambungan Fail dengan Aplikasi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn