I know that Windows 11 changed a bunch things as far as printing goes, but ever since I upgraded to Windows 11, I can't print UPS labels from the ups.com site.
It usually goes:
-Install a Zebra label network printer as a printer
-Install Java
-Install the UPS applet
I have to use Edge to make it happen, but it works in Windows 10. The UPS applet runs a service that runs in the background with a 127.0.0.0 address. But when I print it says "no thermal printer found."
This is the page currently not showing support, but was wondering if anyone got it to work some other way.
Yes, I've tried all the dumb Chrome extensions. They are all scams and just point me to the website where I can buy their printer.
I'm chatting with UPS right now to see what they have to say.
Print to a UPS / Fedex Thermal printer? - Stack Overflow
No unsafe mode available for Java/UPS.com thermal printer
Has anyone had success printing UPS labels from ups.com website with Windows 11?
UPS Thermal Printer Not Working
Videos
Getting the labels in correct format
The FedEx & UPS APIs provide options to get thermal label specific types. You will beat your head on the keyboard trying to get PDFs to print properly on thermal printers.
Some common thermal types EPL/EPL2, ZPL/ZPLII. Most thermal printers will accept documents matching one of these types.
For Fedex something like this in your ShipRequest - This is using the FedEx WSDL for shipping.
RequestedShipment.LabelSpecification.ImageType = FedExShipService.LabelSpecificationImageType.ZPLII
And UPS - Building XML to post to the UPS service.
<LabelSpecification>
<LabelPrintMethod>
EPL2
</LabelPrintMethod>
</LabelSpecification>
Printing the labels
You will need to essentially send "raw" data to the printer. I started with this article and adopted it to my solution. FedEx for example returns a byte array which contains the label information - I convert this to a string and then send to the printer.
'Convert from Byte Array to String
Dim enc As System.Text.ASCIIEncoding = New System.Text.ASCIIEncoding()
Dim strConverter As String = enc.GetString(<ByteArrayFromFedEx>)
http://www.paulaspinall.com/post/2008/05/31/Sending-data-direct-to-a-printer.aspx
There is also another thread on SO about this topic.
Sending raw data to FedEx Label printer
I used to work on UPS shipping systems and yes you can print using the thermal printers. You need the correct drivers installed to do this. Depending how you want to print will also determine how you need to install the printer (local or shared printer). HTH