-
From: "Wiesław Szahun" <a...@a...com.pl>
Newsgroups: pl.comp.programming
References: <2...@n...home.net.pl>
<h2pmkh$eq3$1@news.onet.pl>
Subject: Re: wydruk pliku PDF w Visual Studio
Date: Mon, 06 Jul 2009 13:55:08 +0200
Message-ID: <e...@n...home.net.pl>
MIME-Version: 1.0
Content-Type: text/plain; charset="iso-8859-2"
Content-Transfer-Encoding: 8bit
X-Mailer: home.pl my.webmail
X-Priority: 3
X-NNTP-Posting-Host: c169-120.icpnet.pl
NNTP-Posting-Host: 62.129.252.51
X-Trace: news.home.net.pl 1246881308 62.129.252.51 (6 Jul 2009 13:55:08 +0200)
Organization: home.pl news server
Lines: 45
X-Authenticated-User: artows@home
Path: news-archive.icm.edu.pl!news.rmf.pl!nf1.ipartners.pl!ipartners.pl!news.home.net
.pl!not-for-mail
Xref: news-archive.icm.edu.pl pl.comp.programming:182560
[ ukryj nagłówki ]Witam
Michoo <m...@v...pl> napisał(a):
> Ja bym albo czekał na zniknięcie zadania druku z kolejki przed wysłaniem
Dzięuję za podpowiedź, w pewnym sensie wykorzystałem Twój pomysł, a tak dla
potomnych wygląda to tak:
deklarujemy System.Diagnostics.Process, w StartInfo ustawiamy:
Filename=<ArcoRd32.exe z pełnąścieżką dostęu>,
Arguments = "/p /h "+nasz plik z pełną scieżką dostępu - > wówczas wysdruk
idzie na drukarkę domyślną; lub
Arguments ="/p /h /t"+nasz plik z pełną ścieżką + " " + nazwa drukarki
obowiązkowo w podwójnym czudzysłowiu (")
WorkingDirectory = <katalog w którym jest PDF>
ShellExecutu=false;
można jeszcze pomanipulować CreateNoWindow i WindowStyle według własnego
uznania
Teraz zadajemy Start() i WaitForExit(2000) (2000ms, bo u mnie wydruk średni
trwał około 1 do 1,2 sekundy) i włąściwie wszystko powinno być OK, a nie
jest bo AcrobatReader jest "be", i po zakończeniu wydruku nie kończy pracy
tylko sobie czeka (niewiadomo na co). Poza tym nie wiemy czy wydruk już sie
skończył, więc nie możemy zrobić Close() lub Kill(), bo może się okazać, że
raz będzie ok(bo dokument już trafioł do spoolera), ale innym razem już
nie(bo komputer obciążyło inne zadanie i wydruk trwał znacznie dłużej).
Problem rozwiązałem poprzez sprawdzenie czy w spoolerze drukarki znajduje
się już Job o nazwie mojego pliku, którego data jest póżniejsza niż start
procesu. Jesli zadanie wydruku już jest to można zabić proces i mamy
pewniość że wyjdzie nam dokument w takiej kolejności jaką sobie
założyliśmy.
Dlaczego nie spradamczy dokument jest już wydrukowany, jak doradzał
Michoo(jeszcze raz dzięki), bo umieszczenie dokumentów w spolerze trwa
znacznie szybciej, niż ich późniejszy wydruk, poza tym zawsze może
zabraknąć papieru i całą plikacja bedzie wisieć.
spooler sprawdzam poprzez wykorzystanie klas
System.Printing.LocalPrintServer, System.Printing.PrintQueue,
System.Printing.PrintJobInfoCollection, System.Printing.PrintSystemJobInfo.
I jeszcze uwaga, jeśli będziemy sprawdzać zawartość kolejki wydruku, nie
polecam robienie tego poprzez Refresh() - mii czasami to nie dizałało - nie
widział nowych zadań wydruku. Lepiej zawsze odczytać zadania poprzez
GetPrintJobInfoCollection().
pozdrawiam
Wiesław Szahun
Najnowsze wątki z tej grupy
- Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- Błąd w Sofcie Powodem Wymiany 3 Duńskich Fregat Typu Iver Huitfeldt
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
Najnowsze wątki
- 2025-08-06 Gdynia => Konsultant wdrożeniowy (systemy controlingowe) <=
- 2025-08-06 Białystok => Inżynier oprogramowania .Net <=
- 2025-08-06 "[...] sejmowe wystąpienie posłanki Klaudii Jachiry, która zakończyła je słowami ,,Sława Ukrainie"."
- 2025-08-05 "Chiny przekraczają w wydobyciu 4 mld ton węgla, Indie i USA ponad 1 mld, a Rosja 500 mln ton [...]"
- 2025-08-05 Panuje się 181 159,42 zł./mies. na posła w 2026r.
- 2025-08-05 "Chiny przekraczają w wydobyciu 4 mld ton węgla, Indie i USA ponad 1 mld, a Rosja 500 mln ton [...]"
- 2025-08-05 Czy cos fi przechodzi przez trafo separujące?
- 2025-08-05 kajaki i promile
- 2025-08-05 Re: Tesla jest bezpieczna, wczoraj spaliła się doszczętnie na Ursynowie i nikomu się nic nie stało
- 2025-08-05 Gdynia => Przedstawiciel handlowy / KAM (branża TSL) <=
- 2025-08-05 Re: Atak na lekarza w Oławie. Policja zatrzymała sprawcę na lotnisku Polska Agencja Prasowa 4 sierpnia 2025, 12:16 FACEBOOK X E-MAIL KOPIUJ LINK W szpitalu w Oławie 37-letni pacjent zaatakował lekarza, po tym, jak ten odmówił mu wypisania długoterminowego
- 2025-08-05 B2B i książka przychodów i rozchodów
- 2025-08-04 Re: Atak na lekarza w Oławie. Policja zatrzymała sprawcę na lotnisku Polska Agencja Prasowa 4 sierpnia 2025, 12:16 FACEBOOK X E-MAIL KOPIUJ LINK W szpitalu w Oławie 37-letni pacjent zaatakował lekarza, po tym, jak ten odmówił mu wypisania długoterminowego
- 2025-08-04 Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- 2025-08-04 Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML