![]() |
Drucken in eine Datei
Hallo zusammen,
wenn ich einen Drucker auswähle, mit dem ich eine Datei erzeuge, quasi den Druckspool auf der Platte speichern möchte, erhalte ich eine Eingabeaufforderung, den Dateinamen einzugeben, wo sie gespeichert werden soll. Meine Frage habe ich die Möglichkeit dem Druckertreiber über einen Parameter, diesen Dateinamen mitzugeben? Bzw. Bietet TPrinter um aus Delphi zu drucken einen Eigenschaft, Methode oder ähnliches ??? Ich bin etwas am verzweifelen. Danke schon mal Gruß Funky |
Re: Drucken in eine Datei
da bin ich auch schon mal daran verzweifelt.
konnte zwar in eine datei speichern, habe es aber nicht geschafft, Windows irgendwie zu überreden, diese auch wieder auszudrucken. wenn du also eine Lösung bekommen hast, dann bitte hier posten. gruessle |
Re: Drucken in eine Datei
Hallo
probier mal
Code:
wenn ich micht recht erinnere muss der Drucker freigegeben sein und der Freigabename benutzt werden.
Copy %1 \\rechner\drucker /b
mfg wo |
Re: Drucken in eine Datei
der Parameter /b ist ne gute idee.
ich habs nämlich auch schon probiert mit dem copy, aber ohne /b. |
Re: Drucken in eine Datei
Zitat:
|
Re: Drucken in eine Datei
datei drucken -> ausdruck in datei umleiten...
sollte mit jeder windows-anwendung gehen, die auch druclen kann. manche druckertreiber unterstützen dieses feature zusätzlich auch. |
Re: Drucken in eine Datei
yo das weiss ich ja das ist ja mein eingangsproblem, ich möchte gerne als parameter den dateinamen mitgeben, damit das festern nicht mehr aufgeblendet wird, wo gespeichert werden soll
gruß Funky |
Re: Drucken in eine Datei
Zitat:
da hab ich dich wohl falsch verstanden... schau dir mal diesen link an: ![]() |
Re: Drucken in eine Datei
ja ne ist das gleiche problem, wenn ich den generic text only nehme, muss ich auch den dateinamen eingeben und den will ich über einen parameter (oder wie auch immer ) dynamisch mitgeben können. :?:
stay tuned Funky |
Re: Drucken in eine Datei
Im Grunde kann man bei StartDoc (API-Funktion) einen Dateinamen mit angeben. Das Original aus Printers.pas sieht so aus (hoffe es ist ok, wenn ich den SC poste):
Delphi-Quellcode:
Die benutzte TDocInfo-Struktur hat auch ein Feld lpszOutput (PChar). Wenn das gesetzt ist, dann erfolgt die Ausgabe in diese Datei.
procedure TPrinter.BeginDoc;
var DocInfo: TDocInfo; begin CheckPrinting(False); SetState(psHandleDC); Canvas.Refresh; TPrinterCanvas(Canvas).UpdateFont; FPrinting := True; FAborted := False; FPageNumber := 1; FillChar(DocInfo, SizeOf(DocInfo), 0); with DocInfo do begin cbSize := SizeOf(DocInfo); lpszDocName := PChar(Title); end; SetAbortProc(DC, AbortProc); StartDoc(DC, DocInfo); StartPage(DC); end; Ich hacke mal eben eine Erweiterung von Printers... Nicht so einfach ... theoretisch müsste man den gesamten SC in eine neue Unit kopieren und fast alles übernehmen ... das kann ich natürlich hier nicht posten (wg. Copyright). |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:04 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz