A network of 8 Windows workgroups contains workstations with

  • MS Windows 98 32 bit
  • MS Windows Vista 32 bit
  • MS Windows 7 32 bit
  • MS Windows 7 64 bit
  • MS Windows XP SP3 32 bit
  • MS Windows XP SP 3 64 bit

This network is over many rooms in a few buildings, each room has 2-4 workstations with 1-4 network printers connected/plugged through PCs to athe network.

All users from their workstations are running a common shared application through terminal services (or remote desktops) on MS Windows 2003 Sever 64 bit. So, having entered remotely into the Windows 2003 64 bit terminal session, the users are printing to nearby network printer in his room but has to be able to choose and print to any of network printers (for the cases of printer failures).

In other words, any user (of any computer) should be able to print through (remote desktops/terminal session of) another computer to any network printer connected to a 3d computer

I'd like to understand which network drivers to which operating systems should I install and in which computers.

Suppose, I have separate network printer's driver for each of indicated above Windowses and I plug a network printer to a workstation with Windows 7 64 bit and need to be able to print from a computer with "MS Windows XP SP3 32 bit" both from it "directly" and from remote desktop on Windws 2003 64 bit

There are always 3 computers involved (giving in different combinations):

  • (A) a Client - computer from which a user creates a printing job (Windows XP, Windows Vista, Windows 7 of 32 and 64 bits, mostly 32 bits) or connects to a terminal session on (B) from which is printing;
  • (B) the Server - machine where user from (A) works in terminal session (remote desktop);
  • (C) a Printing Computer - machine to which printer is attached ((Windows XP, Windows Vista, Windows 7 of 32 and 64 bits, mostly 32 bits)

If Client (A) prints to the printing machine (C) for the first time, he is offered and/or has to install corresponding printing driver on client (A) from machine (C) if everything for that printer was already installed and present on Printing computer (C).

And if client (A) prints from terminal session (remote desktop) on Server (B)?
Server (B) is just terminal and file sharing server, it just shares accesses and printers.
Also, note that it is in workgroup

So, if printing is from (A) without entering remote desktop on (B), computer (A) should install the corresponding printer driver in (A) from (C), corresponding to configuration (32/64 bit, Windows 98/7/XP/Vista) of its own machine (A).

And if (A) prints from terminal session (remote desktop) on computer (B)?

It is all good if everything is being detected and done automatically.
But sh*t happens and I'd like to understand what to uninstall, instal, reinstall where and what are the differences of drivers installed on printing machine (C), Client (A) and intermediary (B)

The question is about correcting incorrect installs, changing printers in case of malfunctioning, etc...


In my experience you can get away with just a driver for each platform (32-bit/64-bit), though I'm not sure about Win 98 / NT. Depending on the age of the printer I think you would be lucky to find a driver advertised for '98 but that is not to say that it wouldn't work at all.

With terminal services you have two options for printing, either use the printers installed on the server, or pass-though the printer connections from the client. In the former case you would only need 64-bit drivers (on sessions with 2k3 x64) and in the latter you would need drivers for every platform.

If you are looking for that kind of availability and flexibility in your printing, you're really better off with network-enabled printers. You can network-enable a printer with a small device that has a USB connector on one side and an Ethernet port on the other, but I can't vouch for their reliability. Having done so you then have the ability to manage the printers on a server (adding a driver for each platform), and when a client requests to connect to that printer the driver for its hardware platform is downloaded from the server and installed at the same time. If the driver is not available, you cannot add the printer from the server, but you can still connect to it directly via its IP address, and add a custom driver.

|improve this answer|||||
  • I'd appreciate if you could complete your statement:1)"when a client requests to connect to that printer the driver for its hardware platform is downloaded and installed at the same time" - downloaded from which computer? and installed to which one according to notation in my question (A - Client Computer, B - Terminal Server computer, C- Printing computer). Note, there is no domain while printing jobs can be sent w/o involvement of B (terminal sessions) – Gennady Vanin Геннадий Ванин Apr 30 '12 at 3:17
  • The printers are modern and network-enabled but (this is the main problem) in case of malfunctioning they are being substituted by outdated printers without (=with lost) installation DVDs using drivers found on the internet that are absent or questionable or segregated by 32/64 bit, workstation/server Windows, network/local, Windows 98/7, etc. – Gennady Vanin Геннадий Ванин Apr 30 '12 at 3:34
  • The terminal server would become the print server also. When a printer is added from the server, the client adding the printer would collect the driver at the same time. – john Apr 30 '12 at 19:11
  • According to your notation, A. Assuming I have understood your question correctly and that there is only one computer acting as the terminal server. – john Apr 30 '12 at 19:15
  • I agree with BloodyIron also... You have a serious case for centralisation of management, probably by using a Windows domain. – john Apr 30 '12 at 19:17

Since your clients are accessing the program through terminal services, by default it should be accessing the printers that are setup on the server end of the session, not the local (client) end. As such you can setup all the printers on the server, using the drivers for Windows Server 2003 64bit, and then install printers per-user via the domain profile, and script it to install the printer into their terminal session (or configure the terminal session to already have that printer).

Assuming all of the work is done through the terminal service (remote desktop/RDP) session, you don't need any printers installed on the local systems at all.

|improve this answer|||||
  • Thnx for yr answer. 1)"and then install printers per-user via the domain profile" It is in 8+ workgroups (+some portable PCs users are with blank passwords blocking by default remote access to such a user). For networking the same username+password should be present on all involved Pcs. Where is "user's domain profile" in this case? 2)"you don't need any printers installed on the local systems at all" - most printers are combined with scanner, requiring user to choose the format (jpg,pdf) of scanned to file document thru GUI of a printer,etc. Also not only from terminal session on a "server" – Gennady Vanin Геннадий Ванин Apr 30 '12 at 2:48
  • 3)"clients are accessing the program through terminal services" yes, and those terminal services are most frequently on a computer in another building, but not only. They also scan documents on printers in their rooms with one printer per many computers in a room – Gennady Vanin Геннадий Ванин Apr 30 '12 at 2:57
  • In a workgroup configuration there will be no domain profile. You should really consider converting to a domain of some sort, so you can centrally administrate users, permissions, files, etc. In your situation it would actually make such things easier, but not at first (due to the setting up of it, considering how many different versions of Windows you have). As for scanning, a typical expectation is that people scan to their email, this may be something you want to look into, so as to simplify things. – BloodyIron Apr 30 '12 at 13:58
  • Introducing a domain is not that simple considering that over35+ computers are working over many years in a workgroup having huge amount of programs, shares, shared resources, encryptions configured under accounts in workgroup. Can you give me any references how to painlessly migrate from workgroup (accounts) to domain (accounts)? – Gennady Vanin Геннадий Ванин May 2 '12 at 5:54
  • @WebMAOhist Well along the way I kind of forgot the wide range of versions of Windows you are using. The reality is, it's not going to be painless, however if you do not reel in the organization of the IT infrastructure it will always get worse and is likely already a security threat. Windows 98 is long past receiving any further updates, XP will stop receiving any updates in 2014. Windows 98 and XP will be the most tricky to upgrade and convert to a domain, but it will be worth it. XP has domain support and is still used in corporate business, but it is being phased out. – BloodyIron May 2 '12 at 13:42

You have an enormous number of Windows versions, potentially each with its own printer that it shares on the network, with apparently the requirement that every computer be capable of printing on any printer.

The problem here is that for one computer to be able to print on a printer located on another computer, it needs to have locally installed a driver for that printer. This means that both the computers involved in the operation must have installed drivers for the printer : The server where the printer is physically attached and shared, as well as the client computer that is doing the printing.

This is complicated by the fact that driver-models have evolved across Windows versions, so that Windows 95/98 is incompatible with XP, while both are incompatible with Vista/7. Not to mention that 32-bit and 64-bit Windows versions are also incompatible.

In theory, just connecting to a shared printer automatically installs the driver. In practice, this doesn't work if the computer hosting the printer doesn't have the right driver. For example, you cannot expect an XP computer to have available the right driver for Windows 7; or even for a 32-bit XP computer to have available the right driver for 64-bit XP.

Therefore, if connecting to a shared printer didn't automatically install the driver, you have to do that manually. The methods possible are:

  1. Use the Add Printer applet
    Specify the printer's exact model and let Windows either get the driver from its installation CD, or let Windows search and download it automatically from the Microsoft website
  2. Download the right driver from the printer manufacturer's website and install
    This is normally done by going on the manufacturer's website, Support section, Drivers sub-section, entering the printer model, then downloading the right installation file or files. Some manufacturers may place the driver download inside the product entry on their website. Drivers from the manufacturer have normally several years of advance over Windows, since it may take some time for Microsoft to test and incorporate them into Windows.
  3. Install printer locally then convert to network printer
    Bring the printer physically to the client computer, connect locally via cable, let Windows automatically install the right driver, then disconnect the printer and return it to its place. Finally, convert the locally-created printer to a network printer, as described in this answer.

If you wish to extract an installed printer from one computer in order to transfer it to another, you could use a product such as Driver Magician Lite to extract the driver. The result is normally a driver installable through the Add Printer applet, only that sometimes it may miss out on a required file that you have to find and manually add to the driver package.

All in all, you are in for a lot of boring work. The results are not guaranteed, since drivers for old printers are not guaranteed to exist on later versions of Windows.

|improve this answer|||||
  • thanks! in your "1." and "2." can you be more specific about "download" and "install" where exactly (A)the computer from which a user creates a printing job; B)Server machine where user work in terminal session (remote desktop); C)Computer to which printer is attached) ? – Gennady Vanin Геннадий Ванин Apr 28 '12 at 5:04
  • I have addressed these points in my answer . – harrymc Apr 28 '12 at 9:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.