Bagaimana Saya Membuat Entri Pendaftaran untuk Persatuan Fail dalam C?

Barbara Streisand
Lepaskan: 2024-11-24 00:24:13
asal
719 orang telah melayarinya

How Do I Create Registry Entries for File Association in C  ?

Mencipta Entri Pendaftaran untuk Persatuan Fail dalam C

Pengenalan

Mengintegrasikan aplikasi anda dengan khusus jenis fail memerlukan mengaitkannya melalui entri pendaftaran. Ini memastikan bahawa mengklik dua kali pada fail yang disokong membuka program anda dan menghantar nama fail sebagai hujah.

Langkah 1: Mendaftar ProgID (Jenis Fail)

Di teras persatuan fail ialah ProgID, yang mengenal pasti jenis fail dalam pendaftaran. Gunakan fungsi SetValue untuk mencipta ProgID dalam HKEY_CURRENT_USERSoftwareClasses.

Langkah 2: Mengaitkan Sambungan Fail

Seterusnya, kaitkan sambungan fail sasaran dengan ProgID. Ini dicapai dengan mencipta subkunci dengan nama sambungan di bawah HKEY_CURRENT_USERSoftwareClasses dan menetapkan nilainya kepada ProgID.

Kod Contoh dalam C

#include <windows.h>  // Header for registry functions

// Register the ProgID
HKEY hkey;
LONG result = RegCreateKeyEx(HKEY_CURRENT_USER,
                            "Software\Classes\YourProgID",
                            0,
                            NULL,
                            REG_OPTION_NON_VOLATILE,
                            KEY_ALL_ACCESS,
                            NULL,
                            &hkey,
                            NULL);

// Set the value of the ProgID key
RegSetValueEx(hkey,
             NULL,
             0,
             REG_SZ,
             (const BYTE *)"Your Description",
             sizeof("Your Description") + 1);

// Associate the file extension
RegCreateKeyEx(HKEY_CURRENT_USER,
             "Software\Classes\.YourExtension",
             0,
             NULL,
             REG_OPTION_NON_VOLATILE,
             KEY_ALL_ACCESS,
             NULL,
             &hkey,
             NULL);

// Set the value of the extension key
RegSetValueEx(hkey,
             NULL,
             0,
             REG_SZ,
             (const BYTE *)"YourProgID",
             sizeof("YourProgID") + 1);
Salin selepas log masuk

Pembersihan Pertimbangan

Menyahpasang aplikasi tidak akan mengalih keluar entri pendaftaran secara automatik. Untuk mengelakkan kemasukan anak yatim, pertimbangkan untuk menambah rutin pembersihan semasa penyahpasangan untuk memadamkan kekunci yang berkaitan.

Sumber Tambahan:

  • MSDN: Amalan Terbaik untuk Persatuan Fail: https://docs.microsoft.com/en-us/windows/win32/shell/best-practices-for-file-associations
  • Jenis Fail dan Persatuan Fail: https://docs.microsoft.com /en-us/windows/win32/shell/file-types-and-file-associations

Atas ialah kandungan terperinci Bagaimana Saya Membuat Entri Pendaftaran untuk Persatuan Fail dalam C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan