Dateien drucken

chironex

Erfahrenes Mitglied
Hallo Leute,

ich habe folgende Aufgabe zu lösen:

in einer Webanwendung sind Dateien aus den Daten eines SQL Servers zu erzeugen. Da es sich klarerweise hierbei um einen Server handelt, möchte ich kein Office installieren und habe mir gedacht, ich erzeuge Rich Text Format Dateien in die ich dann meine Daten einfülle. Das funktioniert gut, war nur mit den Grafiken ein wenig Coding.

nun aber zum komplizierten Teil: gewünscht sind PDF Dateien. Diese direkt zu erzeugen ist ein bissl kompliziert. Deshalb habe ich rtf's erzeugt und möchte diese über einen PDF-Drucker in pdf's konvertieren.

Wie kann ich in .Net eine Datei an einen Drucker schicken?

Hat schon jemand Erfahrung mit PDF's in dieser Richtung gemacht?

wäre super, wenn mir hier jemand weiterhelfen könnte.

LG, Karl
 
Hi!

Die einfachste Variante (Beispiel in VB.NET):

Code:
myProc.StartInfo.FileName = "PFAD ZUR DATEI"
myProc.StartInfo.Verb = "print"
myProc.StartInfo.CreateNoWindow = True
myProc.Start()
Allerdings müßtest Du dazu den PDF-Drucker als Standard-Drucker definieren.

MfG
..::SD::..
 
Feine Sache, vielen Dank

Ideal wäre es natürlich, den Druckertreiber mit anzugeben. Ich habe selbst auch schon im Internet recherchiert aber leider dazu nichts gefunden. Standardmässig (also in diesem Fall ohne MS Office) wird Wordpad aufgerufen. Bei PrintTo in folgender Form:

Wordpad.exe /pt %1 %2 %3 %4

Leider war ich aber nicht in der Lage, Informationen zu den vier Parametern zu finden. Weder im MS-Portal noch in diversen Foren. Scheint, als wäre das ein Redmonder Geheimnis :) Habt Ihr hierzu vielleicht noch Infos?
 
OK, habs selber gefunden.

Mit folgender Anleitung hab ichs geschafft
(Vielleicht interessiert sich ja jemand dafür)

Application used to permorm action:
E:\WINNT\system32\notepad.exe /pt "%1" "%2" "%3" "%4"

%1: filename to print
%2: printer name
%3: drivder name: "WINSPOOL" <- standard default
%4: port name: "NE01:" <- standard default

Wichtig dabei ist, den Druckertreiber beim NAmen nicht zu vergessen
Wordpad /pt "test.rtf" "\\druckerserver\druckername" "WINSPOOL" "Ne02"

Danke, dass Du mich auf den richtigen Weg gebracht hast :)

Lg, Karl
 
Hey cool, das hab ich auch noch nicht gewußt..... Aber das kann ich gut gebrauchen.... Vielen Dank an Dich für die Lösung! ;)

MfG
..::SD::..
 
Zurück