Toon posts:

Hoe print je zonder formfeed?

Pagina: 1
Acties:
  • 180 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Ik wil een bestand naar de printer verzenden en zorgen dat hij in het gehegen blijft staan zonder dat hij meteen gaat afdrukken.
Dus je schrijft het bestand naar de printer zonder dat deze iets doet. En daarna schrijf je er nog een bestand naar toe die wat toevoegt.

Dus ik zoek een manier\code die daarvoor zorgt.

( Wij hebben een werkende versie: We schrijven een bestand naar de printer, daarna een anders bestand en dan gaat hij printen. Deze is echter zodanig slecht bereikbaar dat we daar niet van uit kunnen gaan.)

Dit gaat met PRN files.

Bvd.

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 30-11 15:10

Creepy

Tactical Espionage Splatterer

Eeeh.. je hebt dus al een werkend iets?

Wat is dan je vraag? Andere code die hetzelfde doet? Dat lijkt nogal op een scriptrequest, en die staan we hier niet toe. Misschien dat het handiger is dat je je relevante code hier plaatst, aangeeft wat er nu wel en niet (goed) werkt en wat je zelf al hebt geprobeerd om je probleem op te lossen.

Zie ook Programming Beleid en dan met name Programming Beleid - De Quickstart zodat je weet wat we van een topicstart verwachten. Je geeft nu veel te weinig informatie.

[ Voor 8% gewijzigd door Creepy op 05-03-2007 16:27 ]

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


Verwijderd

Topicstarter
het is gewoon een code van een standaard document, die je print naar bestand.
Daar moet worden uitgehaald dat hij een form feet doet, dus ergens in de code moet wat worden weggehaald zodat hij het alleen in het geheugen van de printer leest zonder daadwerkelijk af te drukken.

Ik ben nog niet zo lang op forums dus van daar...

Volgens mij is dat de formfeet die moet worden verwijdert, alleen hebben wij dit gedaan en drukt hij als nog gewoon af..
%-12345X@PJL COMMENT HP LaserJet 4Si
@PJL SET PAGEPROTECT=OFF
@PJL SET PAGEPROTECT=AUTO
@PJL SET RET=ON
@PJL SET RESOLUTION=600
@PJL ENTER LANGUAGE=PCL
E*t600R&u600D*r3F&l0S&l0o&l0H&l26A&l1X&l1G&l8c1E*p0x0Y*c0t5611x8177Y*b0M
*c1G*c20W XXÿÿÿÿÿÿÿÿ(19U(s16901t0b0s12v1P&d@*c1G*v4T*p581Y*p449X *v0o0T*p6814YE%-12345X
Creepy schreef op maandag 05 maart 2007 @ 16:25:
Eeeh.. je hebt dus al een werkend iets?

Wat is dan je vraag? Andere code die hetzelfde doet? Dat lijkt nogal op een scriptrequest, en die staan we hier niet toe. Misschien dat het handiger is dat je je relevante code hier plaatst, aangeeft wat er nu wel en niet (goed) werkt en wat je zelf al hebt geprobeerd om je probleem op te lossen.

Zie ook Programming Beleid en dan met name Programming Beleid - De Quickstart zodat je weet wat we van een topicstart verwachten. Je geeft nu veel te weinig informatie.

  • The Eagle
  • Registratie: Januari 2002
  • Nu online

The Eagle

I wear my sunglasses at night

Ik weet niet om wat voor documenten het gaan, maar anders moet je eens even naar het standaard bij Office meegeleverde MS Binder kijken, die doet nl precies wat jij wilt :)

Al is het nieuws nog zo slecht, het wordt leuker als je het op zijn Brabants zegt :)


  • Pete
  • Registratie: November 2005
  • Laatst online: 31-10 12:38
The Eagle schreef op maandag 05 maart 2007 @ 16:36:
Ik weet niet om wat voor documenten het gaan, maar anders moet je eens even naar het standaard bij Office meegeleverde MS Binder kijken, die doet nl precies wat jij wilt :)
Nee, niet echt.

Ten eerste bestaat MS Binder niet meer (na Office 2000) en ten tweede is binder gewoon een opslag voor verschillende documenten die dan na elkaar afgedrukt kunnen worden.

petersmit.eu


  • pietje63
  • Registratie: Juli 2001
  • Laatst online: 09:37

pietje63

RTFM

Is het in dit geval niet logischer/makkeljker om de documenten zelf te bufferen en niet het geheugen van de printer hiervoor te gebruiken? (niet dat ik je daarmee verder zou kunnen helpen, maar dan ben je iig niet afhanklijk iets externs, zoals een printer)

De grootste Nederlandstalige database met informatie over computers met zoekfunctie!!


Verwijderd

Topicstarter
Het gaat er om dat we een Word bestand via de printer driver naar een file schrijven. Deze binary file gaan we daarna editten en slopen het laatste reset commando er af %-12345 met een hex editor. Daarna sturen we de file met het copy command naar de printer. Het is de bedoeling dat het bij de printer in het geheugen blijft staan zodat we met ons eigen programma er data aan toe kunnen voegen. Het probleem is nu dat de printer het document direct na het copy commando gaat printen en niet op ons wacht. We hebben het FF (0C hex) commando er uit gehaald, dat hielp niet. Kan iemand ons helpen met extra informatie of met een oplossing nog mooier, alvast bedankt.

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Verwijderd schreef op maandag 05 maart 2007 @ 16:59:
Kan iemand ons helpen met extra informatie of met een oplossing nog mooier, alvast bedankt.
Het is hier niet de bedoeling dat we voor jan en alleman kant-en-klare oplossingen gaan maken en/of bedenken. Dat is aan de programmeur zelf. Wel kunnen we je in de juiste richting wijzen.

Mijn 2 cents dan: Waarom vang je niet gewoon de printerqueue? Dan zie je alle documenten voorbijkomen en kun je ze "on the fly" aanpassen. De manier die je nu gebruikt (met "tussenbestanden" en daar ranzige hacks op los laten) lijkt me ook niet de meest ideale.

Daarnaast: Je zegt dat je FF eruit sloopt, maar sloop je ook de EOD? (End Of Document)? Want, zo uit mijn blote bol hoor, dan gaat de printer pas aan 't printen volgens mij.

[ Voor 11% gewijzigd door RobIII op 05-03-2007 17:21 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Verwijderd

Topicstarter
Het gaat er echter ook om een duw in de juiste richting. We vragen hier niet om een volledig script.
Het gaat er om dat we een idee hebben hoe we het kunnen wijzigen, want we hebben al het script alleen zoeken we welke stukje er uit moet worden gehaald zodat hij niet gaat printen pas als wij de volgende taak er achteraan sturen gaat hij pas printen dus nogmaalt wat wij zoeken: Het stukje wat moet worden veranderd\gewijzigd zodat hij niet gaat printen of niet meteen. Hij moet wachten tot dat wij dat zeggen ( en dat weten we wel ).

Bvd
RobIII schreef op maandag 05 maart 2007 @ 17:19:
[...]

Het is hier niet de bedoeling dat we voor jan en alleman kant-en-klare oplossingen gaan maken en/of bedenken. Dat is aan de programmeur zelf. Wel kunnen we je in de juiste richting wijzen.

Mijn 2 cents dan: Waarom vang je niet gewoon de printerqueue? Dan zie je alle documenten voorbijkomen en kun je ze "on the fly" aanpassen. De manier die je nu gebruikt (met "tussenbestanden" en daar ranzige hacks op los laten) lijkt me ook niet de meest ideale.

Daarnaast: Je zegt dat je FF eruit sloopt, maar sloop je ook de EOD? (End Of Document)? Want, zo uit mijn blote bol hoor, dan gaat de printer pas aan 't printen volgens mij.

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 11:17

Janoz

Moderator Devschuur®

!litemod

Waarom moet dat aanpassen perse op de printer gebeuren? Waarom pas je het bestand niet aan voordat je het naar de printer stuurt?

Sowieso vind ik het een erg omslachtige oplossing om een word document aan te passen in zijn geprinte binaire vorm. Is het niet veel makkelijker om een paar vba scriptjes in word los te laten om je document aan te passen?

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • pjonk
  • Registratie: November 2000
  • Laatst online: 22-11 20:39
De techniek waar jij op doelt zijn PCL overlays. Je moet de juiste PCL commando's gebruiken om een overlay in printer memory te kunnen aanmaken. Daarnaast is er ook nog een scheiding tussen en permanent overlays en temporary overlays en je kunt overlays ook nog op permanente stores opslaan zoals een printer harddisk of een Flash DIMM. Het laatste is een stuk makkelijker en efficienter, want dan hoef je maar 1 keer de overlay naar de printer te sturen en blijft deze behouden.
Datascan levert hardware & software om makkelijk printer resources zoals overlays, fonts etc. te kunnen beheren. Ik zou ook deze tutorial eens doorlezen om te bekijken wat de mogelijkheden zijn met PCL macro's.

It’s nice to be important but it’s more important to be nice


Verwijderd

Topicstarter
Het is ons gelukt, we hebben een oudere driver gebruikt van een oudere printer om de .prn file mee aan te maken. Hierna hebben we 0C (hex) verwijdert onderaan met de achtereen volgende teken reeksen. Ook de reset: %-12345X want anders werkt het niet uiterraard. De reset die wordt gedaan na het 2e document die gestuurd werd.

Het werkt perfekt!

bedankt voor alle suggesties!! 8)
Pagina: 1