Fungsi PeerDistRegisterForStatusChangeNotification (peerdist.h)
Fungsi PeerDistRegisterForStatusChangeNotification meminta pemberitahuan perubahan status layanan Distribusi Serekan.
Sintaks
DWORD PeerDistRegisterForStatusChangeNotification(
[in] PEERDIST_INSTANCE_HANDLE hPeerDist,
[in, optional] HANDLE hCompletionPort,
[in, optional] ULONG_PTR ulCompletionKey,
[in] LPOVERLAPPED lpOverlapped,
[out] PEERDIST_STATUS *pPeerDistStatus
);
Parameter
[in] hPeerDist
PEERDIST_INSTANCE_HANDLE yang dikembalikan oleh PeerDistStartup.
[in, optional] hCompletionPort
Handel ke port penyelesaian yang dapat digunakan untuk mengambil pemberitahuan penyelesaian fungsi asinkron. Untuk membuat port penyelesaian, gunakan fungsi CreateIoCompletionPort . Parameter ini bisa NULL.
[in, optional] ulCompletionKey
Nilai yang akan dikembalikan melalui parameter lpCompletionKey dari fungsi GetQueuedCompletionStatus . Parameter ini diabaikan ketika hCompletionPort adalah NULL.
[in] lpOverlapped
Penunjuk ke struktur YANG TUMPANG TINDIH . Jika anggota hEvent struktur bukan NULL, itu akan disinyalir melalui SetEvent() yang digunakan untuk memberi sinyal pemberitahuan. Ini dapat terjadi bahkan jika port penyelesaian ditentukan melalui argumen hCompletionPort .
[out] pPeerDistStatus
Penunjuk ke enumerasi PEERDIST_STATUS yang menunjukkan status layanan Distribusi Serekan saat ini.
Nilai kembali
Jika fungsi berhasil, nilai yang dikembalikan ERROR_IO_PENDING. Jika tidak, fungsi dapat mengembalikan salah satu nilai berikut:
Menampilkan kode | Deskripsi |
---|---|
|
Satu atau beberapa parameter tidak valid. |
|
Handel hPeerDist tidak valid. |
Keterangan
Fungsi ini secara opsional mendaftarkan port penyelesaian dan struktur TUMPANG TINDIH untuk pemberitahuan perubahan status. Setelah berhasil diselesaikan, parameter pPeerDistStatus akan berisi nilai PEERDIST_STATUS yang valid.
Hanya satu pendaftaran aktif untuk setiap sesi yang diizinkan. Pemanggil harus mendaftar untuk pemberitahuan setiap kali setelah memberi sinyal. Pemberitahuan akan dikirim hanya jika status saat ini diubah dari pemberitahuan sebelumnya. Setelah panggilan pertama fungsi PeerDistRegisterForStatusChangeNotification untuk sesi Distribusi Serekan, pemberitahuan pertama akan memicu hanya jika status tidak lagi sama dengan PEERDIST_STATUS_DISABLED.
Perubahan status Distribusi Serekan dapat mengakibatkan layanan Distribusi Serekan berpindah ke status yang tersedia, tidak tersedia, atau dinonaktifkan. Jika status baru dinonaktifkan atau tidak tersedia, konten, informasi konten, atau streaming menangani pemanggil yang memiliki akses ke tidak akan berfungsi lagi. Dalam hal ini, API apa pun yang menggunakan handel ini akan gagal dengan kesalahan PEERDIST_ ERROR_INVALIDATED. Pemanggil harus secara eksplisit menutup handel dengan memanggil API Distribusi Serekan yang sesuai.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 7 Professional [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2008 R2 [hanya aplikasi desktop] |
Target Platform | Windows |
Header | peerdist.h |
Pustaka | PeerDist.lib |
DLL | PeerDist.dll |
Lihat juga
PeerDistServerCloseContentInformation
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