Pemberitahuan VDS
[Dimulai dengan Windows 8 dan Windows Server 2012, antarmuka COM Layanan Disk Virtual digantikan oleh API Manajemen Penyimpanan Windows.]
Penyedia dapat mengirim pemberitahuan peristiwa ke VDS, dan VDS pada gilirannya dapat meneruskan pemberitahuan ke aplikasi. Model pemberitahuan yang digunakan oleh VDS menyerupai model titik koneksi yang digunakan oleh objek COM.
VDS menghasilkan pemberitahuan layanan untuk peristiwa seperti penetapan huruf drive atau kedatangan disk yang tidak dialokasikan. Setelah VDS mengalokasikan disk ke penyedia, penyedia bertanggung jawab untuk menghasilkan pemberitahuan terkait. Ilustrasi berikut menunjukkan antarmuka dan metode yang digunakan dalam model pemberitahuan VDS.
Untuk menerima pemberitahuan, VDS mendaftarkan antarmuka IVdsAdviseSink dengan objek penyedia dengan memanggil metode IVdsProviderPrivate::OnLoad dan meneruskan pointer ke antarmuka. Ketika peristiwa pemberitahuan terjadi, seperti kedatangan volume atau drive baru, penyedia meneruskan struktur pemberitahuan yang sesuai ke VDS sebagai parameter metode IVdsAdviseSink::OnNotify .
Prosesnya mirip antara aplikasi dan VDS. Secara khusus, untuk menerima pemberitahuan, aplikasi mendaftarkan antarmuka IVdsAdviseSink dengan VDS dengan memanggil metode IVdsService::Advise dan meneruskan pointer ke antarmuka. Ketika VDS menerima pemberitahuan dari penyedia, VDS meneruskan struktur pemberitahuan yang sesuai ke aplikasi terdaftar sebagai parameter metode IVdsAdviseSink::OnNotify .
Catatan
Aplikasi yang memanggil Advise akhirnya harus memanggil metode IVdsService::Unadvise . Idealnya, ini harus memanggil Unadvise segera setelah tidak perlu lagi menerima pemberitahuan.
Tabel yang mengikuti mencantumkan pemberitahuan yang dihasilkan penyedia menurut jenis objek.
Object | Pemberitahuan | Nilai | Tautan ke deskripsi peristiwa |
---|---|---|---|
Paket | VDS_NF_PACK_ARRIVE | 1 | VDS_PACK_NOTIFICATION |
Paket | VDS_NF_PACK_DEPART | 2 | VDS_PACK_NOTIFICATION |
Paket | VDS_NF_PACK_MODIFY | 3 | VDS_PACK_NOTIFICATION |
Volume | VDS_NF_VOLUME_ARRIVE | 4 | VDS_VOLUME_NOTIFICATION |
Volume | VDS_NF_VOLUME_DEPART | 5 | VDS_VOLUME_NOTIFICATION |
Volume | VDS_NF_VOLUME_MODIFY | 6 | VDS_VOLUME_NOTIFICATION |
Volume | VDS_NF_VOLUME_REBUILDING_PROGRESS | 7 | VDS_VOLUME_NOTIFICATION |
Disk | VDS_NF_DISK_ARRIVE | 8 | VDS_DISK_NOTIFICATION |
Disk | VDS_NF_DISK_DEPART | 9 | VDS_DISK_NOTIFICATION |
Disk | VDS_NF_DISK_MODIFY | 10 | VDS_DISK_NOTIFICATION |
Partisi | VDS_NF_PARTITION_ARRIVE | 11 | VDS_PARTITION_NOTIFICATION |
Partisi | VDS_NF_PARTITION_DEPART | 12 | VDS_PARTITION_NOTIFICATION |
Partisi | VDS_NF_PARTITION_MODIFY | 13 | VDS_PARTITION_NOTIFICATION |
Subsistem | VDS_NF_SUB_SYSTEM_ARRIVE | 101 | VDS_SUB_SYSTEM_NOTIFICATION |
Subsistem | VDS_NF_SUB_SYSTEM_DEPART | 102 | VDS_SUB_SYSTEM_NOTIFICATION |
Subsistem | VDS_NF_SUB_SYSTEM_MODIFY | 151 | VDS_SUB_SYSTEM_NOTIFICATION |
Pengontrol | VDS_NF_CONTROLLER_ARRIVE | 103 | VDS_CONTROLLER_NOTIFICATION |
Pengontrol | VDS_NF_CONTROLLER_DEPART | 104 | VDS_CONTROLLER_NOTIFICATION |
Pengontrol | VDS_NF_CONTROLLER_MODIFY | 350 | VDS_CONTROLLER_NOTIFICATION |
Pengontrol | VDS_NF_CONTROLLER_REMOVED | 351 | VDS_CONTROLLER_NOTIFICATION |
Port | VDS_NF_PORT_MODIFY | 352 | VDS_PORT_NOTIFICATION |
Port | VDS_NF_PORT_REMOVED | 353 | VDS_PORT_NOTIFICATION |
Drive | VDS_NF_DRIVE_ARRIVE | 105 | VDS_DRIVE_NOTIFICATION |
Drive | VDS_NF_DRIVE_DEPART | 106 | VDS_DRIVE_NOTIFICATION |
Drive | VDS_NF_DRIVE_MODIFY | 107 | VDS_DRIVE_NOTIFICATION |
Drive | VDS_NF_DRIVE_REMOVED | 354 | VDS_DRIVE_NOTIFICATION |
LUN | VDS_NF_LUN_ARRIVE | 108 | VDS_LUN_NOTIFICATION |
LUN | VDS_NF_LUN_DEPART | 109 | VDS_LUN_NOTIFICATION |
LUN | VDS_NF_LUN_MODIFY | 110 | VDS_LUN_NOTIFICATION |
VDS menghasilkan pemberitahuan yang tersisa. Tabel berikut ini mencantumkan konstanta pemberitahuan berbasis layanan menurut kategori.
Kategori | Pemberitahuan | Nilai | Menautkan ke deskripsi peristiwa |
---|---|---|---|
Disk | VDS_NF_DISK_ARRIVE | 8 | VDS_DISK_NOTIFICATION |
Disk | VDS_NF_DISK_DEPART | 9 | VDS_DISK_NOTIFICATION |
Disk | VDS_NF_DISK_MODIFY | 10 | VDS_DISK_NOTIFICATION |
Huruf kandar | VDS_NF_DRIVE_LETTER_FREE | 201 | VDS_DRIVE_LETTER_NOTIFICATION |
Huruf kandar | VDS_NF_DRIVE_LETTER_ASSIGN | 202 | VDS_DRIVE_LETTER_NOTIFICATION |
Sistem file | VDS_NF_FILE_SYSTEM_MODIFY | 203 | VDS_FILE_SYSTEM_NOTIFICATION |
Sistem file | VDS_NF_FILE_SYSTEM_FORMAT_PROGRESS | 204 | VDS_FILE_SYSTEM_NOTIFICATION |
Volume | VDS_NF_MOUNT_POINTS_CHANGE | 205 | VDS_MOUNT_POINT_NOTIFICATION |
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