Cara Mendaftarkan Handler Pratinjau
Topik ini menjelaskan cara mendaftarkan handler pratinjau yang terkait dengan jenis data tertentu. Untuk tujuan ilustrasi, contoh dalam topik ini menggunakan jenis file .xyz. Pendaftaran handler pratinjau adalah pendaftaran berbasis asosiasi file standar.
Petunjuk
Langkah 1:
Pertama, ekstensi nama file dikaitkan dengan ProgID. Entri berikut mengaitkan subkey ProgID xyzfile dengan ekstensi nama file .xyz.
HKEY_CLASSES_ROOT
.xyz
(Default) = [REG_SZ] xyzfile
Subkey ProgID xyzfile disimpan dengan ProgID lainnya seperti yang ditunjukkan di sini:
HKEY_CLASSES_ROOT
xyzfile
Setiap handler pratinjau Subkunci ProgID berisi subkunci bernama shellex yang berisi subkunci yang selalu bernama {8895b1c6-b41f-4c1c-a562-0d564250836f}. Kehadiran subkunjuk itu memberi tahu sistem bahwa handler adalah handler pratinjau.
Nilai default subkunci {8895b1c6-b41f-4c1c-a562-0d564250836f} adalah pengidentifikasi kelas (CLSID) dari handler Anda. Contoh subkunci ProgID xyzfile ditampilkan di sini, mengaitkan handler CLSID {ec3a629a-a47c-4245-bc78-b4b63d0e3154}.
HKEY_CLASSES_ROOT
xyzfile
shellex
{8895b1c6-b41f-4c1c-a562-0d564250836f}
(Default) = [REG_SZ] {ec3a629a-a47c-4245-bc78-b4b63d0e3154}
Langkah 2:
Selanjutnya, tambahkan subkey di bawah CLSID untuk handler pratinjau Anda. Contoh ditunjukkan di sini. Penjelasan entri individu berikut.
HKEY_CLASSES_ROOT
CLSID
{ec3a629a-a47c-4245-bc78-b4b63d0e3154}
(Default) = [REG_SZ] Fabricam XYZ Preview Handler
DisplayName = [REG_SZ] @myhandler.dll,-101
Icon = [REG_SZ] myhandler.dll,201
AppID = [REG_SZ] {6d2b5079-2f0b-48dd-ab7f-97cec514d30b}
InprocServer32
(Default) = [REG_EXPAND_SZ] %ProgramFiles%\Fabricam\myhandler.dll
ThreadingModel = [REG_SZ] Apartment
ProgID = [REG_SZ] xyzfile
VersionIndependentProgID = [REG_SZ] Version IndependentProgID
Nilai default untuk subkunci Anda (di sini, {ec3a629a-a47c-4245-bc78-b4b63d0e3154}) tidak diperlukan atau digunakan. Namun, mengaturnya ke string nonlokalisasi dapat membantu Anda men-debug masalah pendaftaran.
Tanda minus (-101) di sumber daya .dll dalam entri DisplayName ada karena alasan warisan. Entri Ikon, di sisi lain, tidak memerlukan tanda minus.
Nilai AppID memberikan referensi ke AppID aplikasi yang terkait dengan ekstensi nama file (disimpan di bawah HKEY_CLASSES_ROOT\APPID. Nilai yang digunakan di sini—{6d2b5079-2f0b-48dd-ab7f-97cec514d30b}—adalah ID host pengganti Prevhost.exe. Penangan pratinjau 32-bit harus menggunakan AppID {534A1E02-D58F-44f0-B58B-36CBED287C7C} saat diinstal pada sistem operasi 64-bit.
Entri di bawah subkunci InprocServer32 menyertakan referensi kembali ke subkunci ProgID ekstensi nama file serta entri untuk VersionIndependentProgID.
Langkah 3:
Terakhir, handler pratinjau harus ditambahkan ke daftar semua penangan pratinjau. Daftar ini digunakan sebagai pengoptimalan oleh sistem untuk menghitung semua penangan pratinjau terdaftar untuk tujuan tampilan. Sekali lagi, nilai default tidak diperlukan, itu hanya membantu dalam proses debugging.
Catatan
Di Windows 7, jika aplikasi diinstal untuk semua pengguna komputer, gunakan HKEY_LOCAL_MACHINE; jika hanya untuk satu pengguna, gunakan HKEY_CURRENT_USER.
HKEY_LOCAL_MACHINE or HKEY_CURRENT_USER
SOFTWARE
Microsoft
Windows
CurrentVersion
PreviewHandlers
{ec3a629a-a47c-4245-bc78-b4b63d0e3154}
(Default) = [REG_SZ] Fabricam XYZ Preview Handler
Topik terkait