Zurück   klamm-Forum > Virtual World > Programmierung

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 14.08.2011, 23:39:15   #1 (permalink)
Erfahrener Benutzer
Benutzerbild von mbassus

ID: 104267
Lose-Remote
Reallife

mbassus eine Nachricht über ICQ schicken mbassus eine Nachricht über MSN schicken mbassus eine Nachricht über Skype™ schicken
Reg: 23.04.2006
Beiträge: 4.806
mbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehen
Standard Direkten Druckauftrag an Drucker - vom Server aus schicken [WIN]

Hallo zusammen,

ich versuche gerade, Druckaufträge direkt an den USB Laserdrucker zu senden. Bei meiner "Google-Arbeit" bin ich auf die PHP_PRINTER.DLL gestoßen, die unter aktuellen PHP Versionen aber wohl nicht mehr funktioniert.

Da DOS ja nur mit dem LPT-Anschlüssen Arbeitet (und man so nicht auf den Drucker zugreifen könnte) - hab ich den USB Drucker im Netzwerk als "Drucker" freigegeben - und dann per "net use" auf den LTP1 gelegt. Soweit so gut - das klappt auch.

Ich hab mir dann folgendes PHP Skript geschrieben:
PHP-Code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
<?php 
set_time_limit
(6000);
$array[]="------Blablabla --------";
$array[]=date("d.m.Y - H:i:s"). " - Tisch 28";
$array[]="Bedienung: Mayer (38)";
$array[]="------------------------";
$array[]="Pos ------------------- Stk - Preis";
$array[]="Bier                    3 - 2,80 Euro €";
$array[]="Wein                    1 - 4,80 Euro €";
$array[]="Wurst                   2 - 1,80 Euro €";
$array[]="Wasser                  1 - 8,80 Euro €";
foreach(
$array as $val) {
system("echo ^ >prn ".$val);
}

sleep(60);
foreach(
$array as $val) {
system("echo ^ >prn ".$val);
}
?>

Soweit so gut - das funktioniert auch - der Drucker druckt. Allerdings - ohne das sleep(); packt er immer alles auf eine Seite.. manchmal auch Zufallsweise. Ist es irgendwie möglich, dem Drucker einzelne "Druckaufträge" zu geben, so das man meinetwegen auch mehrere Druckaufträge in wenigen Sekunden hintereinander schicken kann - und diese einzeln gedruckt werden?

Von mir aus können diese "Aufträge" vorher auch gern in einzelnen Text-Dateien liegen, wenn es dafür notwendig ist.

Danke und Liebe Grüße,
Martin
mbassus ist offline   Mit Zitat antworten
Gesponsorte Links
Alt 14.08.2011, 23:50:56   #2 (permalink)
return void
Benutzerbild von ice-breaker

ID: 93995
Lose-Remote

ice-breaker eine Nachricht über ICQ schicken
Reg: 27.04.2006
Beiträge: 6.026
ice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehen
Standard

Wie wäre es denn mit einem deutlich sinnvollerem Vorgehen bei dem du mit PHP PDFs erzeugst und dann mit irgendeinem Tool per Kommandozeilenbefehl das PDF druckst? Da gibt es dann genug Möglichkeiten.

Dein jetziger Ansatz ist pure Frickelei und geht schneller kaputt als man ihn zuschauen kann


"Die Wahrheit entgeht dem, der nicht mit beiden Augen sieht." -Orici
ice-breaker ist offline   Mit Zitat antworten
Alt 15.08.2011, 00:03:40   #3 (permalink)
Erfahrener Benutzer

ID: 141382
Lose-Remote

Reg: 20.05.2006
Beiträge: 414
TerraTux kann auf vieles stolz seinTerraTux kann auf vieles stolz seinTerraTux kann auf vieles stolz seinTerraTux kann auf vieles stolz seinTerraTux kann auf vieles stolz seinTerraTux kann auf vieles stolz seinTerraTux kann auf vieles stolz seinTerraTux kann auf vieles stolz sein
Standard

Hallo,

Damit schon mal "rumgespielt"?
Setzt allerdings eine PECL-Bibliothek voraus, keine Ahnung ob die beim XAMPP(?) dabei ist...

Gruß
We have joy we have fun we have UNIX on a SUN
[Mein Link] [Geschlechterkampf - Vote für die Männer]
TerraTux ist offline   Mit Zitat antworten
Alt 15.08.2011, 00:08:20   #4 (permalink)
Erfahrener Benutzer
Benutzerbild von mbassus

ID: 104267
Lose-Remote
Reallife

mbassus eine Nachricht über ICQ schicken mbassus eine Nachricht über MSN schicken mbassus eine Nachricht über Skype™ schicken
Reg: 23.04.2006
Beiträge: 4.806
mbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehen
Standard

Zitat:
Zitat von ice-breaker Beitrag anzeigen
Wie wäre es denn mit einem deutlich sinnvollerem Vorgehen bei dem du mit PHP PDFs erzeugst und dann mit irgendeinem Tool per Kommandozeilenbefehl das PDF druckst? Da gibt es dann genug Möglichkeiten.
Danke - den Wald vor lauter Bäumen nicht gesehen.. das wär natürlich auch eine Lösung..
Kannst du mir schnell sagen, wie man möglichst einfach per Kommandozeile ein PDF druckt? Bin da sehr unerfahren ...
Zitat:
Zitat von TerraTux Beitrag anzeigen
Hallo,

Damit schon mal "rumgespielt"?
Setzt allerdings eine PECL-Bibliothek voraus, keine Ahnung ob die beim XAMPP(?) dabei ist...
Jap, ich Spiel grad mit XAMPP.. hab die PHP_PRINTER.DLL auch schon probiert (siehe erstes Post).. aber ist wohl nicht mehr für aktuelle Versionen von PHP Supportet und schmeißt nur Fehler..
mbassus ist offline Threadstarter   Mit Zitat antworten
Alt 15.08.2011, 00:12:51   #5 (permalink)
kanz pöhse
Benutzerbild von LasMiranda

ID: 28058
Lose-Remote

LasMiranda eine Nachricht über ICQ schicken LasMiranda eine Nachricht über AIM schicken LasMiranda eine Nachricht über MSN schicken LasMiranda eine Nachricht über Yahoo! schicken LasMiranda eine Nachricht über Skype™ schicken
Reg: 05.05.2006
Beiträge: 2.897
LasMiranda genießt hohes AnsehenLasMiranda genießt hohes AnsehenLasMiranda genießt hohes AnsehenLasMiranda genießt hohes AnsehenLasMiranda genießt hohes AnsehenLasMiranda genießt hohes AnsehenLasMiranda genießt hohes AnsehenLasMiranda genießt hohes AnsehenLasMiranda genießt hohes AnsehenLasMiranda genießt hohes AnsehenLasMiranda genießt hohes Ansehen
Standard

Unter DOS wird's da kaum Sachen geben, eher unter Linux und da gibt's laut der Seite lpr. Außerdem wäre das System wesentlich aktueller, als irgendwelches Krüppel-DOS und von Sicherheit mal gar nicht zu reden - Zugriffe von außen z. B.
Gruß, Martin
Losekredite/-anleihen: 0,7%-0,9%/Tag

Deppenapostroph? CD's, DVD's, Mehrzahl und Genitiv ohne Apostroph
Deppenleerzeichen? Service Gebühr, Lose Seite, ... zusammenhängende Worte auch zusammenschreiben, also Loseseite, Servicegebühr oder mit - trennen
totaler Schrott? AGB's - Grund: laut Duden ist AGB schon die Mehrzahl + Deppenapostroph
LasMiranda ist offline   Mit Zitat antworten
Alt 15.08.2011, 00:17:04   #6 (permalink)
Erfahrener Benutzer
Benutzerbild von mbassus

ID: 104267
Lose-Remote
Reallife

mbassus eine Nachricht über ICQ schicken mbassus eine Nachricht über MSN schicken mbassus eine Nachricht über Skype™ schicken
Reg: 23.04.2006
Beiträge: 4.806
mbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehen
Standard

Zitat:
Zitat von LasMiranda Beitrag anzeigen
Unter DOS wird's da kaum Sachen geben, eher unter Linux und da gibt's laut der Seite lpr. Außerdem wäre das System wesentlich aktueller, als irgendwelches Krüppel-DOS und von Sicherheit mal gar nicht zu reden - Zugriffe von außen z. B.
Ist und bleibt ein Lokales System, das auch nicht nach draußen telefoniert, wäre daher egal.... Aber ich hab die Lösung, Poste ich gleich
mbassus ist offline Threadstarter   Mit Zitat antworten
Alt 15.08.2011, 00:27:59   #7 (permalink)
Erfahrener Benutzer
Benutzerbild von mbassus

ID: 104267
Lose-Remote
Reallife

mbassus eine Nachricht über ICQ schicken mbassus eine Nachricht über MSN schicken mbassus eine Nachricht über Skype™ schicken
Reg: 23.04.2006
Beiträge: 4.806
mbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehen
Standard

Ach mist, doch nicht.

@ice-breaker - mir fällt grad ein, PDF geht auch nicht, da es sich hier um einen BON-Drucker handelt...und wenn du dem ein PDF schickst, dreht der völlig durch ..
mbassus ist offline Threadstarter   Mit Zitat antworten
Alt 15.08.2011, 00:38:38   #8 (permalink)
return void
Benutzerbild von ice-breaker

ID: 93995
Lose-Remote

ice-breaker eine Nachricht über ICQ schicken
Reg: 27.04.2006
Beiträge: 6.026
ice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehen
Standard

auch ein Bon-Drucker wird über irgendein Protokoll oder Druck-Modus ansprechbar sein, einfach mal auf gut Glück Zeichen zum Drucker zu schicken geht nunmal schief.

Btw.: Der ASCII- Zeichensatz enthält Steuersignale von denen auch einige u.A. damals für Drucker gedacht waren.


"Die Wahrheit entgeht dem, der nicht mit beiden Augen sieht." -Orici
ice-breaker ist offline   Mit Zitat antworten
Alt 15.08.2011, 00:43:07   #9 (permalink)
Erfahrener Benutzer

ID: 141382
Lose-Remote

Reg: 20.05.2006
Beiträge: 414
TerraTux kann auf vieles stolz seinTerraTux kann auf vieles stolz seinTerraTux kann auf vieles stolz seinTerraTux kann auf vieles stolz seinTerraTux kann auf vieles stolz seinTerraTux kann auf vieles stolz seinTerraTux kann auf vieles stolz seinTerraTux kann auf vieles stolz sein
Standard

Hast Du Unterlagen zum BON_Drucker? Versteht der vielleicht irgendwelche Steuerzeichen/Escape-Sequenzen, die Du auf dem gleichen Weg an den Drucker schicken kannst?
We have joy we have fun we have UNIX on a SUN
[Mein Link] [Geschlechterkampf - Vote für die Männer]
TerraTux ist offline   Mit Zitat antworten
Alt 15.08.2011, 00:46:43   #10 (permalink)
Erfahrener Benutzer
Benutzerbild von mbassus

ID: 104267
Lose-Remote
Reallife

mbassus eine Nachricht über ICQ schicken mbassus eine Nachricht über MSN schicken mbassus eine Nachricht über Skype™ schicken
Reg: 23.04.2006
Beiträge: 4.806
mbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehenmbassus genießt hohes Ansehen
Standard

Leider nein,

aber ich habe nun einen anderen Lösungsansatz.

Es gibt doch eine aktuelle Extension dafür...
Quelle: http://downloads.php.net/pierre/ (PHP_PRINTER)

Apache schnell neustarten..

Und dann Feuer:

PHP-Code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
<?php 
$array
[]='------JUST 1 --------';
$array[]=date("d.m.Y - H:i:s"). " - Tisch 14";
$array[]="Bedienung: Mayer (38)";
$array[]="------------------------";
$array[]="Pos ------------------- Stk - Preis";
$array[]="Bier                    3 - 2,80 Euro €";
$array[]="Wein                    1 - 4,80 Euro €";
$array[]="Wurst                   2 - 1,80 Euro €";
$array[]="Wasser                  1 - 8,80 Euro €";

var_dump(printer_list(PRINTER_ENUM_LOCAL));

$printer "DRUCKER";
$content="";
if(
$ph printer_open($printer)) {
    
printer_start_doc($ph"BON -".rand(1,20000));

   foreach (
$array as $val) {
   
$content.= $val.
   "
;
   }
   
   
printer_write($ph$content);

   
printer_end_doc($ph);
   
printer_close($ph);
} else {
    echo 
"cant do anything.. sorry";
}
?>
So ist das Problem dann gelöst.. Vielen Dank für eure Hilfe!
mbassus ist offline Threadstarter   Mit Zitat antworten
Antwort

Gesponsorte Links

Anzeige


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

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


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[PHP] Formular an entfernten Server schicken baserider Programmierung 7 31.12.2010 17:04:59
10 Mio BL+ 85% RB/ +Bonus von 250 Mio BL möglich/ zum direkten verzocken/ Losekonflikt k341716 Suche Refs: Loseseiten 64 26.09.2010 11:00:34
[W] Werbeflächen auf Power-Slots.de - Im direkten Sichtbereich der User! FlashRevolution Lose4Werbung 6 05.12.2008 19:09:32
Print/FAX Server? AIO-Drucker ins WLAN integrieren? klamm Netzwerktechnik 2 28.11.2008 17:41:58
Suche Refs für Klamm-Spielbank.de 95% RB + Lose zum direkten verzocken! Verhoeven Suche Refs: Loseseiten 26 13.07.2007 09:19:48


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:14:53 Uhr.