Allgemeine Fragen zur PROFAN Programmierung

Views (Heute): 249601 (11037)

| Suchen
| Zurück zur Übersicht

Autor | Thema: Binäre Druckausgabe unter Windows
Stefan Schnell
| Datum: 28.06.01 17:12 (mail@stschnell.de) |
Hallo Community, versuche eine binäre Druckausgabe unter Windows zu programmieren, bei einem lokalen Drucker funktioniert dies wunderbar, jedoch im Netzwerk kommt immer die Fehlermeldung "Drucker nicht gefunden". Hat einer von Euch eine Idee, woran es liegen kann? Anbei der Quelltext meines Versuches: '*CompilerDirektiven*********************************************************** $P+ '*ExterneFunktionsDefinitionen************************************************* Def @OpenPrinter(3) !"WINSPOOL.DRV", "OpenPrinterA" Def @ClosePrinter(1) !"WINSPOOL.DRV", "ClosePrinter" Def @StartDocPrinter(3) !"WINSPOOL.DRV", "StartDocPrinterA" Def @EndDocPrinter(1) !"WINSPOOL.DRV", "EndDocPrinter" Def @StartPagePrinter(1) !"WINSPOOL.DRV", "StartPagePrinter" Def @EndPagePrinter(1) !"WINSPOOL.DRV", "EndPagePrinter" Def @WritePrinter(4) !"WINSPOOL.DRV", "WritePrinter" '*KonstantenDeklaration******************************************************** Def %NULL 0 '*VariablenDeklaration********************************************************* Declare PrinterName$ Declare PrinterHandle& Declare FileName$, FileType$ Declare BufferSize&, WrittenBytes& '*InterneFunktionsDefinitionen************************************************* Def @ZeroStr(1) @Add$(@$(1), @Chr$(0)) '*Hauptprogramm**************************************************************** Let PrinterName$ = @ZeroStr("SYMANTEC FAX STARTER EDITION") If @Equ(@OpenPrinter(@Addr(PrinterName$), @Addr(PrinterHandle&), %NULL), 1) Let FileName$ = @ZeroStr("D:\25397") Let BufferSize& = @FileSize("D:\25397") Let FileType$ = @ZeroStr("RAW") Declare DocInfo# Struct Doc_Info_1 = DocName&, OutputFile&, DataType& Dim DocInfo#, Doc_Info_1 With DocInfo# .DocName& = @Addr(FileName$) .OutputFile& = %NULL .DataType& = @Addr(FileType$) EndWith If @Gt(@StartDocPrinter(PrinterHandle&, 1, DocInfo#), 0) @StartPagePrinter(PrinterHandle&) Declare File# Dim File#, 4096 ReadText File#, "D:\25397" @WritePrinter(PrinterHandle&, File#, BufferSize&, @Addr(WrittenBytes&)) Print WrittenBytes& Dispose File# @EndPagePrinter(PrinterHandle&) @EndDocPrinter(PrinterHandle&) Else @MessageBox("Kein Dokument zum Spooling!", "Fehler", 48) EndIf Dispose DocInfo# If @Equ(@ClosePrinter(PrinterHandle&), 0) @MessageBox("Drucker konnte nicht geschlossen werden!", "Fehler", 48) EndIf Else @MessageBox("Drucker konnte nicht geöffnet werden!", "Fehler", 48) EndIf '*Ende************************************************************************* End Tschüss Stefan

| Zurück zur Übersicht