Share an old 32-bit printer with a 64-bit OS

0

I've got quite a bit of trouble setting up something which I honestly thought would have been easier.

I'm setting up a new PC for a family member (please, no jokes on this, this subject itself is as old as IT support). Unfortunately, said family member has an old Toshiba e-Studio 120 printer. She claims the printer is incredibly efficient when it comes to printing and wants to keep using it. This wouldn't be an issue, except there are no x64 drivers for this printer.

Well, the new system I've set up has Windows 10 x64, so I can't connect the printer directly to the OS. I figured the best way is to set up a VirtualBox VM with a 32-bit Windows, and hook the printer to that VM. This works.

Now my problem is with sharing the printer from the VM with the host OS. Unfortunately, it always ends up failing as the OS demands a 64-bit driver for the printer.

I've tried using other drivers - generic Xerox PCL5 drivers or HP drivers - unfortunately, the printer won't work with them and just refuses to print anything.

Is there a way to turn Windows 7 into an actual print server, i.e. one that doesn't require additional, printer specific drivers from clients?

Shaamaan

Posted 2017-05-08T14:50:25.747

Reputation: 354

Why would you use generic Xerox and HP drivers against a Toshiba? Windows Update offers several "Toshiba e-Studio Universal" drivers, as well as generic ones like "Tosihba e-Studio Mono". Have you tried those yet (directly on the Windows 10 machine)? – Ƭᴇcʜιᴇ007 – 2017-05-08T15:14:37.443

@Ƭᴇcʜιᴇ007 Yup, I did try them. They don't seem to work. – Shaamaan – 2017-05-08T16:01:06.610

@Ƭᴇcʜιᴇ007 To clarify - I didn't try ALL the available Toshiba drivers, only the ones which seemed the most generic or close in name to the e-Studio 120. – Shaamaan – 2017-05-09T07:48:01.970

Answers

2

I've sort-of managed to solve the issue.

I've used the tutorial available on the this site. Basically, it revolves around using GhostScript and RedMon. A fake printer is created and hooked up with RedMon which redirects commands to GS which then prints the actual document on the physical printer. The fake printer (which can use generic drivers which are available in both 32 and 64-bit variants) can then be shared.

The above is done on a virtual machine running Windows 7 x32 and the fake printer is shared with the host OS, which is a Windows 10 x64.

This solution still presents a few hoops:

  1. The VM needs to (obviously) be turned on before anything can be printed.
  2. Advanced printing settings are not available. (Luckily, because this is an old printer, there are basically NO advanced features to make use of.)

Still, this method allows my family member to, after a short setup involving starting the VM, to print any document with ease.

Shaamaan

Posted 2017-05-08T14:50:25.747

Reputation: 354

1unfortunately the link has been dead. I've updated it – phuclv – 2018-09-13T17:02:37.570

0

First of all, it is not possible to install a printer on a PC without a specific driver for that PC. Using a Win7 server does not help; you still need a Win10 driver on the Win10 machine. With a server, that driver is usually loaded on the server as "Additional Drivers", which makes it available to the PCs.

The eStudio 120 is a GDI printer, which uses the Windows graphics rendering engine to convert the page into dots on the paper. GDI printers are usually low cost printers. One of the tricks used to make them cheaper is to remove the rendering engine from the printer, and use the Windows rendering engine instead.

As they use the internals of Windows, GDI drivers are very specific to the version of Windows under which they run. As there is no Win10 x64 driver for your printer, your chances of getting it to work are slim. All you can do is to try the latest Win7 driver and hope for the best.

Also because it is a GDI printer, the driver is also very printer specific. That means that drivers for similar printers often will not work at all. This is different from more intelligent printers that support a language like PCL5/6 or PostScript, where a different driver will usually at least produce some result. Hence, universal drivers as suggested in @techie007's will not work with this printer.

In summary, your best bet is to try either a Win7 driver or possible a driver for a very similar printer. But then the question is: which Toshiba printer is similar to this one? I had a look through their copier list at the support website but nothing there struck me as a possibility. Maybe someone else can help with that.

One last possibility may be to run a Virtual PC using Hyper-V and use it to install Windows 7 on the Windows 10 PC. Whether that will work I do not know, as I have no experience with it.

hdhondt

Posted 2017-05-08T14:50:25.747

Reputation: 3 244

yes Win10 can still use Windows 7 or 8 drivers. You probably need to start the driver setup file in compatibility mode. I've used Vista drivers for some devices when Windows 7 had just released and they all worked fine. Same to Win8 when using win7 drivers – phuclv – 2017-05-09T01:38:47.160

In your last point... How is the using Hyper-V, in this case, different from using VirtualBox? I've already described trying to share the printer using a Windows 7 x32 VM. How would possibly using HyperV change the issue at hand? – Shaamaan – 2017-05-09T07:51:37.840

You are right, it will only work when you print from within the VM. However, you could print to file in the VM, and then send the file to the printer in Win10. A simple script can automate that. This way will let you use all the printer settings. – hdhondt – 2017-05-09T10:47:43.447

@hdhondt If you could write how to create such a script and / or point towards the solution, it would be great. Otherwise the last part of your comment is... vague at best. At the moment I'm using GhostScript (as described in the other answer) and it sort-of works. The solution, however, isn't perfect - for example, there's no way to edit printer-specific settings from the host OS (I don't really think it's possible to do that, but you DID mention "using all the printer settings"...) – Shaamaan – 2017-06-03T16:01:19.193

The "printer settings" are done at print time (or, in the case of M$ office, in Page Setup), The script would simply send the file to the printer (using LPR or COPY) when it appears, then delete it and wait for a specified time, e.g. 1 minute. A delay can be done by PINGing a non-existent address, e.g. "ping 1.2.3.4 -n 1 -w 60000 > nul" will wait 60 seconds. – hdhondt – 2017-06-03T23:43:36.080

0

The easiest way in case there's no driver support is printing to XPS or PDF and transfer to the virtual machine for printing. This way you don't need to install any apps in the VM for opening the file.

Windows Vista and up all have XPS printer and viewer built-in so you don't even need any external apps. But installing a 3rd party PDF printer in the host and PDF viewer in the VM broaden your choice and doesn't take much space.

Windows 10 also includes PDF printer and viewer but unfortunately there's no driver in your case.

phuclv

Posted 2017-05-08T14:50:25.747

Reputation: 14 930

That's one way of doing it, obviously. I was hoping for something more "automatic", if possible. I know enough about working with computers (and rarely need to print things) that, if it was a solution for me specifically, it would be enough. Unfortunately, the family member I'm doing this for isn't as computer savvy and prints a lot of documents. Such a manual solution likely wouldn't be acceptable. – Shaamaan – 2017-05-09T07:36:09.037