C# Yazdırma İşlemi
-
c# ile yazdırma işlemi yapmak için bir buton var. birde yazdırma iptal etmek için bir buton var.
yazdır butonuna tıklayıp yazdırma başlıyor. yazdırma işlemi devam ederken iptal butonu ile yazdırma işleminin anında durmasını istiyorum.
bunu yapabileceğim csharp kodu varmıdır.
yazdırma işlemini printdocument nesnesi oluşturup yapıyorum.
yardımcı olursanız sevinirim..
-
direk bir methodu varmı bilmiyorum fakat en kötü windowsun print spooler servisini resetleyebilirsin. bilen biri yazana kadar el altında dursun.
FCN tarafından 29/Tem/13 16:29 tarihinde düzenlenmiştir -
ServiceController sc = new ServiceController(@"C:\Windows\System32\spoolsv.exe");
sc.Stop();kodunu yazıyorum ama çalışmıyor galiba
ya da kod çabuk cevap vermiyor yazdırma işlemi tamamlanıyor çünkü
-
nokta vuruslu degilse bildigim kadariyla durdurma yapamayabilirsin cunku printerlar usb portundan verinin tamamini aldiktan sonra yazmaya basliyor ama parelel portta veri akisi surekli devam ettiginden belki o porta yapilabilir
-
hellhound bunu yazdı
ServiceController sc = new ServiceController(@"C:\Windows\System32\spoolsv.exe");
sc.Stop();kodunu yazıyorum ama çalışmıyor galiba
ya da kod çabuk cevap vermiyor yazdırma işlemi tamamlanıyor çünkü
sorun kod değilde spool.exe ile alakalı ya da yazıcı komutlara geç yanıt veriyor.
-
Hocam yazıcıda bence problem ki ben çok iyi hatrlıyorum normal yazdırma işlemini iptal ederken bile yazıcı min 1 sayfa kesin yazdırıyor. Bunun için yazıcıyı kapatıp işlemi durdurup geri açman gerek tabi bunu nasıl yaparsın bilmiyorum sadece fikir.
-
ayhun bunu yazdı
nokta vuruslu degilse bildigim kadariyla durdurma yapamayabilirsin cunku printerlar usb portundan verinin tamamini aldiktan sonra yazmaya basliyor ama parelel portta veri akisi surekli devam ettiginden belki o porta yapilabilir
katiliyorum, ayrica windows altinda yaziciya direkt olarak erisemiyosun, sen yazdirma biriktiricisine aktariyosun yaziciyla o ilgileniyo muhtemelen aninda durduramazsin yada yaziciya ozel kod yazman gerekir
-
hellhound bunu yazdı
ServiceController sc = new ServiceController(@"C:\Windows\System32\spoolsv.exe");
sc.Stop();kodunu yazıyorum ama çalışmıyor galiba
ya da kod çabuk cevap vermiyor yazdırma işlemi tamamlanıyor çünkü
daha önce kullanmadım bunu ama burda yaptığın şey tahminen servisi durdurmak, yani yazıcıya çıktı gönderdikten sonra bilgisayarı kapatsan veya kabloyu çeksende çıktı almaya devam edicektir.
buraya incele istersen...
http://sandeep-aparajit.blogspot.com/2008/05/how-to-cancel-printing-in-c.html
-
Sadece pooling servisini durdurup yeniden başlatmak yetmez. Windows klasörünün bilmem neresinde yazıcıya gönderilecek dosyalar tutuluyor, onları da silmek lazım.
