Bagikan melalui


Pemberitahuan perubahan printer dukungan

Aplikasi dapat meminta pemberitahuan kemunculan peristiwa antrean cetak dengan memanggil fungsi FindFirstPrinterChangeNotification, FindNextPrinterChangeNotification, dan FindClosePrinterChangeNotification spooler. Jika Menurut Anda penulis aplikasi ingin meminta pemberitahuan peristiwa untuk antrean cetak yang didukung oleh penyedia cetak parsial, Anda harus mendukung pemberitahuan peristiwa di penyedia Anda sebagai berikut:

  • Berikan fungsi FindFirstPrinterChangeNotification .

    Penampung memanggil fungsi ini untuk menyediakan penyedia cetak dengan informasi berikut:

    • Sekumpulan bendera yang menunjukkan jenis peristiwa printer yang aplikasinya telah meminta pemberitahuan.

    • Handel ke antrean cetak yang pemberitahuannya diminta.

    • Daftar jenis informasi yang diminta aplikasi untuk disediakan ketika suatu peristiwa terjadi.

      Fungsi harus mengembalikan nilai bendera yang menunjukkan apakah penyedia harus dijajaki untuk menentukan apakah perubahan telah terjadi. Penyedia non-polling mengirim sinyal ke klien setiap kali perubahan terjadi. Penyedia yang harus dijajaki tidak mengirim sinyal ke klien ketika perubahan terjadi. Sebaliknya, penampung memberi sinyal klien secara berkala, apakah perubahan telah terjadi atau tidak.

      Pada tingkat penyedia, fungsi ini memiliki argumen yang berbeda dari pada tingkat Win32.

  • Lacak semua peristiwa antrean cetak yang ditentukan aplikasi saat disebut FindFirstPrinterChangeNotification.

    Untuk daftar jenis pemberitahuan yang dapat diminta aplikasi, dan untuk daftar jenis informasi yang dapat digunakan untuk menjelaskan peristiwa, lihat fungsi Win32 FindFirstPrinterChangeNotification . Jenis peristiwa yang mungkin meminta pemberitahuan aplikasi termasuk menambahkan atau menghapus pekerjaan atau formulir cetak. Jenis informasi yang mungkin diminta aplikasi mencakup parameter pekerjaan atau formulir.

    Penyedia cetak yang tidak dijajaki harus memanggil PartialReplyPrinterChangeNotification atau ReplyPrinterChangeNotification ketika perubahan terjadi, untuk menyediakan penampung dengan informasi yang menjelaskan perubahan. Fungsi ReplyPrinterChangeNotification harus dipanggil di beberapa titik karena menyebabkan penampung memberi sinyal aplikasi, sementara fungsi PartialReplyPrinterChangeNotification tidak. Ketika aplikasi menerima sinyal dari ReplyPrinterChangeNotification, aplikasi seharusnya memanggil FindNextPrinterChangeNotification. Fungsi terakhir ini memasok aplikasi dengan informasi peristiwa yang sebelumnya diterima penampung dari penyedia cetak.

    Penyedia cetak yang dijajaki hanya harus melacak perubahan. Penampung menandakan aplikasi secara berkala. Ketika aplikasi menerima sinyal, seharusnya memanggil fungsi FindNextPrinterChangeNotification spooler. Untuk penyedia polling, fungsi ini memanggil fungsi RefreshPrinterChangeNotification penyedia.

  • Menyediakan fungsi RefreshPrinterChangeNotification .

    Fungsi ini harus mengembalikan status saat ini dari semua opsi antrean cetak yang dipantau, untuk antrean cetak yang ditentukan. Penampung memanggil fungsi ini saat aplikasi memanggil FindNextPrinterChangeNotification dengan set bendera PRINTER_NOTIFY_OPTIONS_REFRESH.

    Aplikasi seharusnya mengatur bendera ini jika panggilan sebelumnya ke FindNextPrinterChangeNotification mengembalikan struktur PRINTER_NOTIFY_INFO dengan set bendera PRINTER_NOTIFY_INFO_DISCARDED. Penyedia polling dan nonpolled harus mendukung RefreshPrinterChangeNotification.

  • Berikan fungsi FindClosePrinterChangeNotification .