Error: "NWDRV-3.00-00: The NetWare Client is not loaded or is not configured correctly"

  • 3138739
  • 27-Oct-2006
  • 16-Mar-2012

Environment

Novell Client for Windows 2000/XP/2003 4.91 Support Pack 2 File Access
Novell Client for Windows 2000/XP/2003 4.91 Support Pack 1 File Access
Novell Client for Windows 2000/XP/2003 4.91 File Access
Novell Client for Windows 2000/XP/2003 4.90 Support Pack 2 File Access
Novell Client for Windows 2000/XP/2003 4.91 Support Pack 1a File Access
Novell Client for Windows 2000/XP/2003 pre-4.90 File Access

Situation

Error: "NWDRV-3.00-00: The NetWare Client is not loaded or is not configured correctly"
Symptom: Happens for some users but not others, even on the same Windows machine.
Symptom: Happens "every time" sometimes, yet at other times seems to happen only once.

Resolution

Workaround: Select the "Disable Network Warnings" checkbox that appears on the error dialog, if and when ever the error dialog is being seen. This will prevent further occurrences for the same user.

Additional Information

The issue is occurring whenever Windows loads the NTVDM.EXE process, which it does in order to execute a 16-bit application. In the course of initializing the 16-bit application support, Novell Client modules such as VLMSUP.EXE and NETWARE.DRV are used to provide the Novell Client interface 16-bit applications require.

The "root cause" typically occurring is the fact that NETWARE.DRV will fail to load whenever the current user does not have any NCP connections. (e.g. When logged in "Workstation Only"; when the NCP connections have been manually disconnected; etc.) NETWARE.DRV has not actually found something "wrong" with the Novell Client; NETWARE.DRV successfully used the Novell Client to enumerate NCP connections and found that there were not any, so NETWARE.DRV terminates its initialization, which is why there is a failure reported.

When this failure occurs, NETWARE.DRV presents a dialog to the effect of "NWDRV-3.00-00: The NetWare Client is not loaded or is not configured correctly". If confirmed, the dialog simply disappears and execution will continue normally.

However, there is a subtle side-effect that also occurs the first time any user launches a 16-bit application after the Novell Client for Windows is installed. The side-effect is with regard to a Windows "NetWarn" configuration parameter, which used to be written into the WIN.NI.

(Note that Under Windows 2000 and later, Windows captures the WIN.INI write attempt and creates this "NetWarn" value under [HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows] instead. So the "NetWarn" value on Windows 2000 and later can be viewed and changed in REGEDIT.)

If the first time a 16-bit application is launched NETWARE.DRV is able load successfully, the "NetWarn" value written to the registry is "0" which means "do not prompt for network warnings". This sets up the scenario where, even if NETWARE.DRV does fail in the future, the user is not going to see an error dialog in response to this failure.

In contrast, if the first time a 16-bit application is launched NETWARE.DRV fails to load, the "NetWarn" value written to the registry is "1", which means "prompt for network warnings". This sets up the scenario where every time NETWARE.DRV fails to load, the user sees the "NWDRV-3.00-00" error dialog.

Furthermore, in a scenario where the error dialog is being presented, repeatedly running a 16-bit application may not repeatedly present the "NWDRV-3.00-00" error dialog. This because the Windows NTVDM.EXE process can still be running after the 16-bit application itself has been terminated. NETWARE.DRV only gets loaded and initialized when NTVDM.EXE first starts up. So if NTVDM.EXE is still running, executing another 16-bit application is going to re-use the existing NTVDM.EXE process where NETWARE.DRV has been previously loaded and initialized.

(So if you are testing against this issue and expect to see the"NWDRV-3.00-00" error dialog again, you must use Task Manager or a similar tool to verify that NTVDM.EXE is not running, and either logout or forcibly terminate the process if NTVDM.EXE is still running.)

Note also that "NetWarn" is not a Novell-specific configuration value. So in some circumstances it may be necessary to consider that something other than the initialization of NETWARE.DRV is actually causing the value to change.

Overall, this leaves us with the following points:

1. The 16-bit application support in NETWARE.DRV intentionally fails and presents an error dialog if the support is loaded at a time when no NCP connections exist. This behavior simply remains from exactly how it behaved under the actual Novell Client for DOS/Windows and earlier 16-bit client versions.

2. If no "NetWarn" configuration exists in the registry at the time when a 16-bit application is launched and no NCP connections exist, the NETWARE.DRV failure that occurs will cause a "NetWarn" value of"1" to be established under [HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows]. This configuration will cause future failures to also present the dialog, until "NetWarn" is set to "0" (which can be achieved by selecting the "Disable Network Warnings" checkbox on the warning dialog itself, or by changing the value in the registry directly).

3. If no "NetWarn" configuration exists in the registry at the time when a 16-bit application is launched (and NCP connections do exist), the successful loading of NETWARE.DRV will cause a"NetWarn" value of "0" to be established under [HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows]. This configuration means that even if NETWARE.DRV does fail initialization at some point in the future, no warning dialog will be presented to the user when this event happens.

4. To preemptively keep the user from ever seeing this warning dialog, a "NetWarn" value of "0" would need to be established in each user's HKEY_CURRENT_USER registry hive, under [HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows].