CAUSE
This happens because HPMON identifies your computer's NICs by number, and
the installation or upgrade process can change these numbers.
When you install, reinstall, or upgrade Windows NT, a number is assigned to
each NIC in your computer. The one with the lowest I/O base address is
assigned the number 0, the one with the next lowest I/O base address is
assigned the number 1, and so on. However, if you later add a new NIC to
the system, it is assigned the next unused numbers, regardless of its I/O
base addresses. Then, when you reinstall or upgrade, the numbering is
reassigned by I/O base address.
As an example, say you install Windows NT on a computer with two adapters,
NIC-A and NIC-B, with I/O base addresses of 368h and 360h, respectively.
NIC-B becomes adapter 0, and NIC-A becomes adapter 1. If you later install
another adapter, NIC-C, with I/O base address 358h, it becomes adapter 2.
Then you reinstall or upgrade Windows NT and the adapter numbers are
reassigned. NIC-C becomes adapter 0, NIC-B becomes adapter 1, and NIC-A
becomes adapter 2.
There is no way for Setup to identify services that rely on NIC numbering.
These services cannot automatically adjust to the reassigned numbers and do
not function correctly after an upgrade or reinstall.
The HPMON print monitor relies on the DLC protocol to send print jobs to
network printers equipped with HP JetDirect adapters. DLC may be bound to
multiple NICs, but HPMON only uses one of the DLC-bound NICs. It stores
that NIC's number in the registry, in the HKEY_LOCAL_MACHINE subtree in
this key:
\SYSTEM
\CurrentControlSet
\Control
\Print
\Monitors
\Hewlett-Packard Network Port
\Options
\Adapter
When you upgrade the operating system and the NIC numbering changes,
the value of this registry key is left incorrect. HPMON attempts to locate
its JetDirect-equipped network printers using the wrong NIC. When this
happens, each printer in Print Manager that uses an HPMON port has a status
of "Unavailable," and jobs sent to these printers do not print.