-
Data: 2009-07-05 07:07:41
Temat: wydruk pliku PDF w Visual Studio
Od: "Wiesław Szahun" <a...@a...com.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Witam
Mam taki problem. Muszę wydrukować automatycznie (bez pytania o drukarkę,
itp) kilka plików PDF na przemian z ReportViewerem, tj.:
plik PDF1, ReportViewer, plik PDF2, ReportViewer, itd.
Samo wydrukowanie ReportViewera czy PDF-a nie sparawia problemu. Problem
pojawia się, gdy obie procedury połącze w jedno.
W przypadku ReportViewera, wiem dokładnie kiedy wydruk się zaczął i
zakończył. W przypadku PDFa nie wiem kiedy dotarł do spoolera drukarki, aby
móc aktywować następny wydruk. Ustawienie zwłoki nie wile daje, no chyba że
byłoby to kilkanaście skeund, ale wówczas przy wydruku kilkunastu dokumntów
trwa to strasznie długo.
Do wydruku PDF-a w necie znalazłem dwa rozwiązania:
1. AcroPDFLib z AcroPDF.dll - ale tego nie udało mi się uruchomić (jeśli
ktoś ma kawałek chodzącego kodu, to chętnie skorzystam),
2. wykorzystując System.Diagnostics.Process i uruchamiając wydruk poprzez
AcrobatReader.
punkt 2. działa, z małym minusem, bo aktywuje okno procesu ArobatReadar
uruchomionego w trakcie startu systemu, ale można je zminimalizować i po
problemie (nie zamykać, bo znowu wyskoczy).
Z tego co zauważłem, to wywołanie acrobat readera, nawet w sposób
bezpośredni (StartInfo.ExecuteShell=false; StartInfo.FileName = <ścieżka do
AcroRd32.exe> praktycznie momentalnie się kończy, bo prces realizacji
wydruku jest zlecany innemu porcesowi, a ten który wywołałem się kończy,
więc otrzymuję informację że mogę drukować nastęny dokument, choć w
rzeczywiśtości wydruk wogóle się jeszcze nie rozpoczął. Efekt, wydruk
wygląda nastęująco: ReportViewer1, reportViewer2(rep2), Rep3, PDF1, rep4,
rep5, PDF2, rep6, itd. przy czym obserwuję losową ilość wydruków
reportViewera pomiędzy poszczególnymi PDF (średnio od 2 do 4)
Próbowałem też wydruku poprzez załadowanie pliku PDf do WebBrowsera, i
uruchomienie funkcji wydruku WebBrowsera, ale o ile działa to dla Html, to
nie działa dla PDF, pewnie trzeba byłoby się odwołać do kontrolki OCX, bo
to ona w rzeczywostości wyświetla PDF, ale nie wiem jak.
A teraz pytanka:
1. Czy ktoś wiem, jak kontrolować proces wydruku AcrobatReadera.
2. Jak ewentulanie kontrolować wydruk WebBrowsera, jeśli zawartość
wyświetlana jest przez kontrolki.
3. jka mozna ewentualnie w inny sposób wydrukować plik PDF
ps. projekt mam w C#, ale żaden problem jeśli rozwiązanie byłoby w C++ lub
VB, ważne aby dało się zaimplementować w Visual Studio 2008.
pozdrwiam
z góry dzięki za wszelką pomoc
Wiesław Szahun
Następne wpisy z tego wątku
- 05.07.09 08:01 Michoo
- 06.07.09 11:55 Wiesław Szahun
Najnowsze wątki z tej grupy
- Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
Najnowsze wątki
- 2025-03-19 Gemini
- 2025-03-19 Mokry sen Zenka :)
- 2025-03-19 Re: Dlaczego tak odstają od Tesli?
- 2025-03-19 Czy grupa p.s.prawo przetrwa najbliższe wybory (prezydenta)?
- 2025-03-19 Warszawa => Frontend Developer (obszar Angular13+) <=
- 2025-03-19 Czy "niedopuszczony pełnomocnik" jest w prawie się na to skarżyć jak "świadek" zmarła bez zostawienia mu takiej instrukcji?
- 2025-03-19 Kraków => Business Development Manager - Network and Network Security
- 2025-03-19 Ostrów Świętokrzy => Node.js / Fullstack Developer <=
- 2025-03-19 Kraków => IT Expert (Network Systems area) <=
- 2025-03-19 Ryga => Konsultant Wdrożeniowy Comarch XL/Optima (Księgowość i Kad
- 2025-03-19 China-Kraków => Senior PHP Symfony Developer <=
- 2025-03-19 Kraków => Programista MS Dynamics 365BC/NAV <=
- 2025-03-19 Warszawa => JavaScript / Node / Fullstack Developer <=
- 2025-03-19 Gdańsk => PHP Developer <=
- 2025-03-19 Kraków => MS Dynamics 365BC/NAV Developer <=