ERRORMSG: PmScreen.exe "OLE class MBServer is not registered"

Article ID: 041208sab
Last Reviewed: July 10, 2023

The information in this article applies to:

  • PMScreen, PMWave, PMMeter and other Power Master Logger utilities on all platforms.

Symptoms

When starting PmScreen.exe or one of the other Power Master utilities the following error messages appear:

“The OLE class MBServer is not registered on this computer”

or

“An operation was attempted on a nonexistent network connection”

or

“Error: Library not registered”

Cause (all Platforms)

The registration information for MBServer.exe is missing, invalid or inaccessible.

MBServer.exe is the communication manager component for various Power Master Tools, such as PMScreen, PMWave, PMMeter, PmFiles etc.

Before You Start

If possible run PmUpdate using menu item HELP – CHECK FOR UPDATES from within Pronto to bring your installation up to date.
If PmUpdate will not operate in your environment due to security restrictions, consider contacting your distributor to obtain the update patch file.

MBServer version 2.08 and later on Windows Vista and later

Cause

When running as an Elevated process on Windows Vista or Windows 7 or later, PmScreen is prevented from accessing the registration Information for MBServer due to security restrictions.

Resolution

Ensure PmScreen is NOT launched as an Elevated process.

To avoid Elevation ensure the following instructions are followed.
1)  Do NOT use the RUN AS ADMINISTRATOR menu item under the right click menu.
2)  When launching from a desktop/menu shortcut or directly by browsing to PmScreen.exe, check the PROPERTIES using the right click menu.
On the COMPATIBILITY page:
a) uncheck the box Run this Program as an Administrator.
b) uncheck the box Run this Program in compatibility mode.
3)  Do NOT launch PmScreen from another elevated Process.
For example, if Pronto is launched elevated then using the PmScreen button will launch PmScreen elevated.

MBServer version 2.06 and earlier on Windows Vista and later

Cause

When running under a restricted or normal user account on Windows Vista and later, PmScreen does not have the required access rights to register MBServer into the system.

Resolution

Allow PmScreen to run with elevated rights once by following these steps:

1)    Right click on PmScreen.exe.
2)   Select “Run As” from the drop down menu and then choose <Administrator>.
This should allow PmScreen to register MBServer successfully.
On subsequent uses of PmScreen you can run PmScreen as a normal user.

Resolution (older platforms)

Solution: Force MBServer.exe to re-enter its registration information in the system registry.

Follow the steps below:

  • Click on Start on the taskbar then select Run (or press the Windows Key and <R>).
  • Click on Browse.
  • In the Browse dialog, navigate to the directory in which PmScreen.exe and Pronto was installed. Locate MBServer.exe and click on open.
  • In the Run dialog edit the command line so that it reads:
    <drive><directory>MBSERVER.EXE  /REGSERVER
    where <drive><directory> is the folder in which MBServer.exe resides.
  • Click on OK. MBServer.exe will run, re-enter its registration information then exit.
  • PMScreen.exe should now  function correctly.

Background information

When PmScreen is run for the first time MBServer is not (yet) registered so PmScreen attempts to register it automatically.
MBServer.exe version 2.06 (shipped with Pronto 5.66 or earlier) registers itself under HKEY_CLASSES_ROOT.
MBServer.exe version 2.08 (shipped with Pronto 5.68 and later) registers itself under HKEY_CURRENT_USER.

Limitations on writing registration information into HKEY_CLASSES_ROOT

On Windows XP, 2000 and NT4, a process launched by a restricted user cannot write registration information to HKEY_CLASSES_ROOT.
On Windows Vista and later, a process launched normally (not Elevated) cannot write registration information to HKEY_CLASSES_ROOT.

Limitations on launching components registered under HKEY_CURRENT_USER

On Windows Vista and later, an elevated process will not launch a component registered under HKEY_CURRENT_USER.