| |
|
|
- Página 1 - |
|
Rolf Koch | Folgendes es otra vez veces no mi Stärke Hab una Tool programmiert, wo I una Drucker con el üblichen Apis zugreife. Mir fehlt a dato todavía irgendeine Möglichkeit si la Druckbefehl ankommt vorher el Inhalt auszulesen, bevor él druckt. Also así en el Art: Druckerseite en String. Einer una Concepto? Mir fällt en el Moment nix una |
|
|
| |
|
|
|
« Dieser Contribución wurde como Solución gekennzeichnet. » |
|
- Página 4 - |
|
Andreas Miethe
| Rolf Koch (11/20/10)
So hatte vorm Konzert otra vez gekuckt y festgestellt, daß imprimir test&,wi&,he& Immer 0,0,0 printen. Naja veces gemütlich rangehen y studieren ^ ^
If fragt a el falschen Punto el Devmode-Struktur. Hoch oder Querformat es a Position 44 como word 1 oder 2
{$cleq}
$H Windows.ph
$H winspool.ph
DEF Get_STDPrinter(1) Substr$(ReadIni$("WIN.INI","Windows","Device"),@&(1),",")
DEF &PRINTER_CHANGE_JOB $FF00
DEF &INFINITE $FFFFFFFF
DEF &PRINTER_CHANGE_ADD_JOB $100
DEF OpenPrinterA(3) !"winspool.drv","OpenPrinterA"
DEF FindFirstPrinterChangeNotification(4) !"winspool.drv","FindFirstPrinterChangeNotification"
DEF FindNextPrinterChangeNotification(4) !"winspool.drv","FindNextPrinterChangeNotification"
DEF EnumJobsA(8) !"winspool.drv","EnumJobsA"
DEF FindClosePrinterChangeNotification(1) !"winspool.drv","FindClosePrinterChangeNotification"
DEF ClosePrinter(1) !"winspool.drv","ClosePrinter"
Declarar JOB_INFO_1#
Declarar druckername$,dokument$,dstring$
Declarar Ende%,lb&,old_count&,entry$,sounddir$,lizenz$
Declarar hicon&,cancel&,Title$,Versión$,config$
Declarar wav$,dateipfad$,belege$,wurde$,new$,abelege%
Var InfoBuffer& = 0
Var BytesNeeded& = 0
Var BytesReturned& = 0;
Var A& = 0
Var L& = 0
Var chgObject& = 0
Var pdwChange& = 0
Var fcnreturn& = 0
Var hPrinter& = 0
Var foundprint& = 0
Var Printer$ = Get_STDPrinter(1)
Var devmoaddr&=0
Var drv$=""
Var wi&=0
Var he&=0
Var Orientation&=0
Var test&=0
//Ventana de Estilo 64
CLS
imprimir usedll("winspool.drv")
imprimir printer$
imprimir OpenPrinterA(Addr(Printer$),Addr(hPrinter&),0)
imprimir hPrinter&
chgObject& = FindFirstPrinterChangeNotification(hPrinter&,&PRINTER_CHANGE_JOB, 0, 0)
imprimir chgObject&
dateipfad$=$progdir
dstring$="Drucktest.rtf"'Wordpad Expediente bajo Drucktest.rtf gespeichert para Test!
' Am besten una Filedruck auswählen, así uno kein Papier verbraucht.
settimer 50
Sinestar encargado Ende%
Waitinput
If %wmtimer
~WaitForSingleObject(chgObject&,150)'200 Millisekunden warten
fcnreturn& = FindNextPrinterChangeNotification(chgObject&, Addr(pdwChange&),0,0)
foundprint&=0
If fcnreturn&
If pdwChange& = &PRINTER_CHANGE_ADD_JOB
'Imprimir "neuer Druck-Job"
EnumJobsA(hPrinter&,0,1,2,0,0,Addr(BytesNeeded&),Addr(BytesReturned&))
Dim JOB_INFO_1#,BytesNeeded&
Repeat
EnumJobsA(hPrinter&,0,1,2,JOB_INFO_1#,BytesNeeded&,Addr(BytesNeeded&),Addr(BytesReturned&))
If BytesReturned&
'Localizar 0,0
druckername$=String$(Largo(JOB_INFO_1#,4),0)
dokument$=String$(Largo(JOB_INFO_1#,16),0)
foundprint&=1
devmoaddr&=Largo(JOB_INFO_1#,40)
test&=long(devmoaddr&,104)
wi&=long(devmoaddr&,108)
he&=long(devmoaddr&,112)
Orientation&=word(devmoaddr&,44)
drv$=cadena$(devmoaddr&,0)
EndIf
Until BytesReturned& = 0
If foundprint&=1
imprimir dokument$
imprimir dstring$
imprimir drv$
imprimir test&,wi&,he&
Imprimir If (Orientation& = 1,"Hochformat","Querformat")
If dokument$=dstring$
'playsound sounddir$+"doorbell.wav",1 'HIER SOUNDAUSGABE
PRINT "Jetzt sería el Lautsprecher Dingdong spielen"
EndIf
EndIf
EndIf
EndIf
EndIf
EndWhile
FindClosePrinterChangeNotification(chgObject&)
ClosePrinter(hPrinter&)
killtimer
End
|
|
|
| Gruss Andreas ________ ________ ________ ________ _ Profan 3.3 - XProfanX2 Win 95,98,ME,2000,XP,Vista - Win 7 32 / 64 Bit ASUS X93S - Intel Core I7-NVIDIA GForce 540M 8GB Arbeitsspeicher Homepage : [...] | 20.11.2010 ▲ |
|
|
|
|
|
| |
|
- Página 6 - |
|
| Rolf Koch (24.11.10)
Hmm, que aquí: Rolf Koch (24.11.10)a pointer to a null-terminated cadena that specifies the name of the machine that created the imprimir job hört se vielversprechend a, oder?
Hört se por desgracia, no anders a como: Rolf Koch (24.11.10)
A pointer to a null-terminated cadena that specifies the name of the machine that created the imprimir job. de el job_info_2. |
|
|
| |
|
|
|
Rolf Koch | Yo sage el ahora aber bajo Vorbehalt, porque kann auch ser, daß Maschine wirklich el Serverstring war y yo mich verkuckt habe. Jedoch wäre el auch blöd. Weil dies wäre De hecho, el Erzeuger, wo el Anwendung el Druck evtl. generiert. Ach es el Blöd ^ ^ Yo voluntad el Gerät, welches como erstes el Daten envía - sogesehen el Rohdaten. BOhhhhhaaa bin Yo otra vez anspruchsvoll muahahahaha. Aber dies es determinado una unmögliche Sache. Neue Concepto muss her - also muss Yo otra vez denken MIST ^ ^ |
|
|
| |
|
|
| |
|
- Página 7 - |
|
|
| Schon intenta el Spoolerverzeichnis a überwachen? |
|
|
| |
|
|
|
Rolf Koch | Jo es geschützt y No entre en ran. Kommst sí no veces en el Explorer ran. Leider, el wäre lo, si una Druck anliegt, direkt kmpl. Expediente en String lesen y auswerten. Achso: Und no en el Concepto kommen, más Spoolverz. a wählen - darf Yo no |
|
|
| |
|
|
|
| Rolf Koch (25.11.10)
Kommst sí no veces en el Explorer ran.
Besonders el Explorer sería una "geschütztes" Directorio _nicht Mostrar - como kann lo ya ser el uno todavía normal darauf zugreifen kann - sería Yo todavía veces por cmd probieren. |
|
|
| |
|
|
|
Rolf Koch | Ok, gesetzt el Fall lo sería ir. Würde el Tiempo reichen en antes el automatischen löschen el Expediente einzulesen? |
|
|
| |
|
|
|
| Das kann Yo bien vorstellen especialmente Usted imho auch no grad el letzten pocos Bytes necesidad. Auf welchem OS se ejecuta Su Programa? |
|
|
| |
|
|
|
| Ausserdem... vlt. liesse el Expediente auch para Lesen abierto y luego sería ellos no gelöscht. ^ ^ |
|
|
| |
|
|
|
Rolf Koch | Läuft en XP. Wäre aber muy schlecht si la no gelöscht sería, oder? Dann füllt se el Directorio. Also hier kann Yo zwar el Directorio por Programa zugreifen, como Yo aber Fileprint mache, se sehrwahrscheinlich no gespoolt. Halt schlecht para testen. |
|
|
| |
|
|
|
| Rolf Koch (25.11.10)
Läuft en XP.
Damit fällt desafortunadamente el CommitSpoolData Función weg como sólo de Vista. [...]
Rolf Koch (25.11.10)
Wäre aber muy schlecht si la no gelöscht sería, oder?
Zumindest sería ellos no gelöscht solange ellos para Lesen geöffnet... |
|
|
| |
|
|
|
Rolf Koch | Naja ahora zuerst veces Bettchen. Aber Yo kann mich vage daran erinnern, daß wir el Thema schonmal hatten, bevor Yo el Tool en el jetztigen Stand brachte, porque lo kein Zugriff gab. Damals Yo quería el Spoolordner en Archivos kontrollieren y lo funktionierte no. Naja ahora a müde en .... Yo gehe ahora mi Gedanken en el Spoolträumeordner ablegen ^ ^ - como tener Yo wenigstens Zugriffsrechte en él |
|
|
| |
|
|
|
| Rolf Koch (25.11.10)
Yo gehe ahora mi Gedanken en el Spoolträumeordner ablegen ^ ^ - como tener Yo wenigstens Zugriffsrechte en él
Temporär! |
|
|
| |
|
|