Cara Membuat Penghandel Drop
Secara default, file bukan target drop. Anda dapat membuat anggota jenis file menjadi target penghilangan dengan menerapkan dan mendaftarkan penangan drop.
Jika handler drop didaftarkan untuk jenis file, itu dipanggil setiap kali objek diseret atau dijatuhkan pada anggota jenis file. Shell mengelola operasi dengan memanggil metode yang sesuai pada antarmuka IDropTarget handler.
Prosedur umum untuk menerapkan dan mendaftarkan handler ekstensi Shell dibahas dalam Membuat Handler Ekstensi Shell. Dokumen ini berfokus pada aspek implementasi yang khusus untuk menghilangkan penangan.
Petunjuk
Langkah 1: Menerapkan Drop Handler
Seperti semua handler ekstensi Shell, handler drop adalah objek Component Object Model (COM) dalam proses yang diimplementasikan sebagai DLL. Mereka mengekspor dua antarmuka selain IUnknown: IPersistFile dan IDropTarget.
Shell menginisialisasi handler melalui antarmuka IPersistFile-nya . Ini menggunakan antarmuka ini untuk meminta pengidentifikasi kelas handler (CLSID) dan menyediakannya dengan nama file. Untuk diskusi umum tentang cara mengimplementasikan handler ekstensi Shell, termasuk antarmuka IPersistFile , lihat Membuat Penangan Ekstensi Shell.
Setelah handler drop diinisialisasi, Shell memanggil metode yang sesuai pada antarmuka IDropTarget handler.
Langkah 2: Mendaftarkan Penghandel Drop
Handler drop terdaftar di bawah subkuntang jenis file ini.
HKEY_CLASSES_ROOT
ProgID
shellex
DropHandler
Buat subkunci DropHandler bernama untuk handler, dan atur nilai default subkunci ke bentuk string GUID CLSID handler. Untuk diskusi umum tentang cara mendaftarkan penangan ekstensi Shell, lihat Membuat Penangan Ekstensi Shell.
Contoh berikut mengilustrasikan entri registri yang mengaktifkan penangan drop untuk contoh jenis file .myp.
HKEY_CLASSES_ROOT
.myp
(Default) = MyProgram.1
CLSID
{00000000-1111-2222-3333-444444444444}
InProcServer32
(Default) = C:\MyDir\MyCommand.dll
ThreadingModel = Apartment
MyProgram.1
(Default) = MyProgram Application
shellex
DropHandler
(Default) = {00000000-1111-2222-3333-444444444444}
Topik terkait
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk