I have a docx document with thousands of pages. I also have 3 printers with same brand and type attached to my PC. I want to print page 1-1000 using printer1, page 1001-2000 using printer2 and page 2001-3000 using printer3. I'm unable to print those pages at the same time. It prints sequentially not simultaneously. I also change Enable printer pooling but no luck so far.
Related
I have a odd problem with a Zebra printer that I am using. It is supposed to print at 2 inches per second. I have set this on my control panel (it is set up as a windows printer), as well as setting it under the Zebra PrinterServer.
I use an application called CoLOS to print barcodes off of it during production, but for some reason, it keeps overwriting the 2 inches per second setting under the Zebra Net Print Server to 6 inches per second. Their tech support basically told me it's impossible on their end because it's using windows drivers, but after testing printing other items through other applications with no issue (some of which are through CoLOS itself), nothing else triggers the printer to revert to 6 inches per second except for the only print job that matters.
I have wireshark set up to monitor connections between the server and the printer. I have printed one good print from CoLOS that does not trigger the printer to change it's inches per second setting, and I did one print that I know triggers it (and verified it switched from 2 to 6 after). I have the captures that have the data packets, but I can't interpret them. Would there be a way for me to compare these/turn them into some readable format, so that I can show this to tech support?
I was able to find this which tells me how to interpret the important first few lines of the ASCII text that was sent to the printer. It confirmed for me that the production print job was sending ^PR6, setting the inches per second to 6, overwriting the 2 inches per second I had previously set to the printer.
I currently have the following issue. I would like to print a receipt (pdf file) on a Star TSP100 thermal printer with Google Cloud Print (from AppEngine). The connection works great, but I have an issue with the positioning.
The PDF file has a variable length, and therefore I have to print the document on 72mm x 2000mm (so the length is always correct). The remaining whitespace is cut off by the printer. When I print a receipt with the default print dialog in Chrome, the document is positioned at the top of the canvas (72mm x 2000mm). However, when I try to print the same document with Google Cloud Print the document is positioned at the center of the canvas. The result is a lot of whitespace before the actual receipt starts. The whitespace after is still cut off correctly by the printer.
Things I tried so far:
Setting a specific media size in the Cloud Job Ticket (CJT). Then the printer cuts off at 200mm length (default printer setting).
Posting a printjob from Chrome and checking the CJT of this job in the GCP Simulation API. The CJT is not different from mine, so how is Chrome able to print a different document?
All other options in the CJT as described in the Google Cloud Print Documentation.
Banging my head against the wall, also didn't work.
If I could mimic a request from Chrome (which gives the correct result), the problem would be solved. However, I can not see how these are different from my requests.
Any help is greatly appreciated!
I need to print documents in a specific order.
To do that,i use shellExecute api to print documents.
Some documents may be quicker to print , so i have to wait for the document to be in the spooler before calling another shellExecute.
For that, i use FindFirstPrinterChangeNotification, waitForSingleObject and FindNextPrinterChangeNotification.
It works fine.
But if the application started by shellExecute is already open, it's possible that it prints on another printer that the windows default printer. (if default printer has been changed )
I could watch all printers, but, i'd prefer to know wich printer uses the started process and watch this printer.
With shellExecuteEx, i can get a handle to the process started by this api.
So, is there a way to know the printer used by default by a process ?
So, is there a way to know the printer used by default by a process?
No there is not. Programs are entitled to use whatever logic they choose to determine their default printer. So in general, you've no way to ask a process which printer it will use, without having more specific knowledge of the process in question.
I have a software that prints labels. It generates many pages with n columns to be printed in a label printer (commonly Argox or Zebra). I use report builder to do so, meaning I send the jobs through the windows driver and not directly to the printer.
I have this one customer that is having a really hard time printing her labels. The printer pauses for 15-20 seconds between one page and another.
I´ve reviewed each and every configuration I could and did not find anything.
To make my problem worse, my customer uses the Bartender software (wich comes with Argox) and when printing there it has not this delay. Bartender uses the windows driver as well.
Well, from the point of view of my client, the problem is with my software, I don´t blame her.
From my point of view I can´t control such a thing (pause between pages) once I am using the driver.
Am I wrong? Is there anything I could do to avoid such a delay?
Important Info
Argox OS 214 TT - PPLA
Drivers updated to the last version (7.2)
Serial Cable being used
Does the report software you use create ZPL output, or a bitmap? You can check this by setting your printer driver to print to a file. If the file is huge, >1MB, it's probably creating a bitmap and that could take a long time to send to the printer.
Bartender would create ZPL if using internal fonts and barcodes, so the output will be tiny and the printer is optimized to print native ZPL. If your software uses fonts not on the printer (Arial, Times new roman, etc), it will send the label down as a graphic instead of using the printer's built in fonts, which would result in a HUGE file even for a small amount of text. Same thing goes for graphics, inlined vs. recalled graphics
In Internet Cafes where people are allowed to print, sometimes they print more pages than they intended to.
I'm looking for a way to display an "Are you sure you want to print X pages?" dialog after they pressed print (in any application), but before the job is sent to the queue.
I'm looking for pointers on how to implement such a hook.
(I have considered modifying a FOSS PDF printer to first print into a PDF and then display the dialog and then if the user presses "Yes", print it on the real printer. But this seems a really roundabout way of doing this and one also loses printer-specific features this way.)
One of the things you could do which is also kind of round about, is pause the print spooler, print your job, get a page count, and then prompt the user for confirmation. If the user okays the job, then release the spooler. I don't have the API calls handy but I have manipulated spooler queues quite easily.
Of course the downside to this idea is if the queue is server-based and potential permission issues could be afoot.
Another alternative would be to force the output to a WMF or EMF file and tally the page count that way, then hand it off to the spooler. This is similar to your notion of outputting it to a PDF, but uses a native approach. (This is essentially what applications typically do(did) for doing previews-- rendering the job in a metafile format which is then displayed on screen or spooled to the printer)
Unfortunately there is no way to get the page count ahead of rendering the print job unless you are intimately aware of the contents and can judge it, so you are forced to at least go through the motions of printing.
Hope this helps.