Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Önemli
Modern yazdırma platformu, Windows'un yazıcılarla iletişim kurmak için tercih ettiği araçlardır. Yazıcı cihazı geliştirme için Windows 10 ve 11'deki yazdırma deneyimini özelleştirmek için Yazdırma Desteği Uygulamaları (PSA) ile birlikte Microsoft'un IPP gelen kutusu sınıf sürücüsünü kullanmanızı öneririz.
Daha fazla bilgi için bkz. Yazdırma Desteği Uygulaması v1 ve v2 tasarım kılavuzu.
İş kuyruğunun canlı bir görünümünü sağlamak için Windows'un Windows 8.1 ve sonraki sürümlerinde bir iş yönetimi özelliği kullanıma sunulmuştur.
Bu özellik, istemcinin yazdırma işini iptal etmesine de olanak tanır. İstemci, UWP cihaz uygulamasının içinden veya yazıcı uzantısından uygun programlama arabirimini çağırabilir.
Yeni arabirimler
İş yönetimi özelliğini uygulamak için Windows 8.1'de aşağıdaki arabirimler kullanıma sunulmuştur.
İş yönetimi oturumu başlatılıyor
bir iş yönetimi oturumu başlatmak için önce yönetmek istediğiniz bir iş aralığını belirtmeniz ve istemeniz gerekir. Bu iş aralığı "görünüm" olarak adlandırılır ve bunu belirtmek için IPrinterQueue2::GetPrinterQueueViewyönteminikullanırsınız.
Görünümü farklı bir iş kümesini izleyecek şekilde değiştirmek istiyorsanız, bunu yapmak için IPrinterQueueView::SetViewRangeyönteminikullanabilirsiniz.
Yazdırma kuyruğunun dinamik bir kuyruk olduğunu unutmayın. Bu nedenle yazdırma kuyruğunun durumu her değiştiğinde bir olay tetiklenir ve IPrinterQueueViewEvent::OnChanged yöntemi istenen görünümün güncelleştirilmiş bir anlık görüntüsünü sağlar.
Aşağıdaki C# kod parçacığı, bir iş yönetimi oturumu başlatmaya yönelik yeni arabirimlerin kullanımını gösterir.
void PerformJobManagement(IPrinterQueue2 queue)
{
//
// Create a printer queue view and specify the range of
// print queue positions to be monitored
//
PrinterQueueView queueView = queue.GetPrinterQueueView(0, COUNT_JOBS_MONITORED);
//
// Add the event handler to the IPrinterQueueView object via the
// standard COM event model, the IConnectionPoint mechanism.
//
queueView.OnChanged += queueView_OnChanged;
//
// When a different range of print jobs needs to be monitored,
// reset/update the view.
//
queueView.SetViewRange(20, COUNT_JOBS_MONITORED);
}
//
// Create an event handler that is called when
// there is a change in the View
//
void queueView_OnChanged(
IPrintJobCollection pcollection,
uint ulviewOffset,
uint ulviewSize,
uint ulcountJobsInPrintQueue)
{
foreach (IPrintJob job in pCollection)
{
UIDisplay(job.Name);
UIDisplay(job.Id);
}
}
UIDisplay, bilgileri kullanıcıya görüntülemek için geliştirdiğiniz mekanizma için genel bir ad kullanılır.
Ayrıca, iş numaralandırmasının ilk olay işleyicisi eklendiğinde başladığını ve son olay işleyicisi kaldırıldığında durdurulduğunu unutmayın.