AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Netzwerkdrucker ansprechen?
Thema durchsuchen
Ansicht
Themen-Optionen

Netzwerkdrucker ansprechen?

Ein Thema von Rads · begonnen am 1. Sep 2015 · letzter Beitrag vom 1. Sep 2015
Antwort Antwort
Rads

Registriert seit: 31. Aug 2015
5 Beiträge
 
Delphi XE8 Professional
 
#1

Netzwerkdrucker ansprechen?

  Alt 1. Sep 2015, 06:57
Guten Morgen zusammen,

ich beschäftige mich gerade mit dem Thema "Drucken mit Delphi" und hoffe dass ihr mir bei meinem Problem helfen könnt.

listbox1.items := printer.printers; so kann ich alle verfügbaren Drucker ermitteln.

Gibt es eine Möglichkeit, einen Drucker über seine IP-Adresse auszuwählen (anzusprechen), der sich im Netzwerk befindet, ohne diesen neuen Druckertreiber auf der Maschine, auf der die Anwendung läuft, installieren zu müssen?

Oder wie kann ich alle verfügbaren Drucker, die einen/den gleichen Treiber haben, vermitteln und über die IP ansprechen?

Danke im Voraus für die Antworten..
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#2

AW: Netzwerkdrucker ansprechen?

  Alt 1. Sep 2015, 08:14
Schau Dir bitte mal http://www.4craws.co.uk/9-winapieg/2...umprinters-api an, ist zwar kein Delphi, sollte aber verständlich sein.

Dort wird die Konstante PRINTER_ENUM_LOCAL genutzt.
Unter Delphi 7 findet man in der WinSpool.pas weitere Konstanten:
Delphi-Quellcode:
PRINTER_ENUM_DEFAULT = $00000001;
PRINTER_ENUM_LOCAL = $00000002;
PRINTER_ENUM_CONNECTIONS = $00000004;
PRINTER_ENUM_FAVORITE = $00000004;
PRINTER_ENUM_NAME = $00000008;
PRINTER_ENUM_REMOTE = $00000010;
PRINTER_ENUM_SHARED = $00000020;
PRINTER_ENUM_NETWORK = $00000040;
Schau bitte mal, ob Du damit weiterkommst.
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.763 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Netzwerkdrucker ansprechen?

  Alt 1. Sep 2015, 08:33
Guten Morgen zusammen,

ich beschäftige mich gerade mit dem Thema "Drucken mit Delphi" und hoffe dass ihr mir bei meinem Problem helfen könnt.

listbox1.items := printer.printers; so kann ich alle verfügbaren Drucker ermitteln.

Gibt es eine Möglichkeit, einen Drucker über seine IP-Adresse auszuwählen (anzusprechen), der sich im Netzwerk befindet, ohne diesen neuen Druckertreiber auf der Maschine, auf der die Anwendung läuft, installieren zu müssen?

Oder wie kann ich alle verfügbaren Drucker, die einen/den gleichen Treiber haben, vermitteln und über die IP ansprechen?

Danke im Voraus für die Antworten..
Hast Du irgendwo ein Programm gesehen, daß das kann? Ich kenne nur Programme, die installierte Drucker ansprechen. Wofür auch die Mühe? Das Windows Printing System macht seine Arbeit doch ganz gut. Wenn das Kundenforderung ist, verlang bitte mächtig viel Asche dafür.

Sherlock
Oliver
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann
  Mit Zitat antworten Zitat
Rads

Registriert seit: 31. Aug 2015
5 Beiträge
 
Delphi XE8 Professional
 
#4

AW: Netzwerkdrucker ansprechen?

  Alt 1. Sep 2015, 09:02
Zitat:
Schau Dir bitte mal http://www.4craws.co.uk/9-winapieg/2...umprinters-api an, ist zwar kein Delphi, sollte aber verständlich sein.
Danke für deine Antwort. ich schaue es mir an

@ Sherlock: Danke für deine Antwort.
Zitat:
Ich kenne nur Programme, die installierte Drucker ansprechen. Wofür auch die Mühe? Das Windows Printing System macht seine Arbeit doch ganz gut.
Ja.. ich weiß, dass Windows das nicht kann und Informationen für den Drucker braucht. Ich dachte es gäbe irgendwie eine Möglichkeit.
Zitat:
Wenn das Kundenforderung ist, verlang bitte mächtig viel Asche dafür
Ja.. Du hast recht!


..Und wie kann ich einen Drucker über die IP-Adresse ansprechen und zum Drucken verwenden?

Geändert von Rads ( 1. Sep 2015 um 14:35 Uhr)
  Mit Zitat antworten Zitat
CSI

Registriert seit: 16. Okt 2004
2 Beiträge
 
Delphi XE7 Professional
 
#5

AW: Netzwerkdrucker ansprechen?

  Alt 1. Sep 2015, 09:27
Hi,

so sende ich Daten übers Netz direkt an einen Etikettendrucker.
(wobei der Drucker seine eigene Drucker-Sprache hat)

Code:
     IdTCPClient1.Connect;
     try
       //stream erzeugen
       myStream := TMemoryStream.Create();
       try

         //stream füllen aus einem Memo
         MemoIP.Lines.SaveToStream(myStream);

         //stream senden
         myStream.Position := 0;
         IdTCPClient1.IOHandler.Write(myStream);
       finally
         myStream.Free;
       end;
     finally
       IdTCPClient1.Disconnect;
     end;
Solltest du den zu druckenden Inhalt, der normalerweise in den Druckerpuffer geht
in einen Steram umleiten können, sollte das funktionieren.
Hab's selbst noch nicht getestet.

In meinem Fall erstelle ich die Druckbefehle selbst.
  Mit Zitat antworten Zitat
franktron

Registriert seit: 11. Nov 2003
Ort: Oldenburg
1.446 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#6

AW: Netzwerkdrucker ansprechen?

  Alt 1. Sep 2015, 10:01
Damit sollte das vielleicht gehen https://de.wikipedia.org/wiki/Intern...nting_Protocol
Frank
Tux sein Lieblingsquellcode
While anzfische<TuxSatt do begin
Fisch:=TFisch.Create; Tux.EssenFisch(Fisch); Fisch.Free;inc(anzfische); end;
  Mit Zitat antworten Zitat
Rads

Registriert seit: 31. Aug 2015
5 Beiträge
 
Delphi XE8 Professional
 
#7

AW: Netzwerkdrucker ansprechen?

  Alt 1. Sep 2015, 14:34
Zitat:
Danke für den Link

Mal schauen, ob ich damit weiterkomme

Ich muss das nochmal besprechen, ob es sich das überhaupt lohnt...

Danke euch allen
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:59 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz