OAK Registry Settings

Top  Previous  Next

This section describes how Excel is configured to load OAK, and how the installer makes this happen. It is intended for IT administrators and power users.

When OAK is installed, the installer performs COM registrations at machine level, configures Excel to install OAK in the COM add-ins list of each user as they log in and start Excel. It also installs a 3rd party licensing component and causes that to perform COM self-registration.

When OAK is uninstalled, the installer removes the COM registrations, configures Excel to remove the registry keys that remove OAK from the COM add-ins list of each user as they log in and start Excel, unregisters and removes the 3rd party licensing component.

OAK COM registration

OAK has various COM registrations:

The OAK Add-in COM registrations

The licensing component COM registrations

The OAK COM API COM registrations

This section covers the first two. Throughout this section, we use Windows regedit scripts to show registry entries that are added or deleted.

The OAK Add-in COM registration

The GUID default value of the CLSID key refers to an entry in the Classes\CLSID key:

32-bit Windows, 32-bit COM registration

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\SOFTWARE\Classes\Operis.OAK5.Connect\CLSID]
@="{222B6397-C8E8-4167-AC21-8DE8A25D922B}"

[HKEY_CURRENT_USER\SOFTWARE\Classes\CLSID\{222B6397-C8E8-4167-AC21-8DE8A25D922B}]
@="Operis.OAK5.Connect"

[HKEY_CURRENT_USER\SOFTWARE\Classes\CLSID\{222B6397-C8E8-4167-AC21-8DE8A25D922B}\InprocServer32]
@="C:\\\\Users\\\\username\\\\AppData\\\\Local\\\\Operis\\\\OAK5\\\\Operis.OAK.AddIn.dll"
"ThreadingModel"="Apartment"

[HKEY_CURRENT_USER\SOFTWARE\Classes\CLSID\{222B6397-C8E8-4167-AC21-8DE8A25D922B}\ProgID]
@="Operis.OAK5.Connect"

[HKEY_CURRENT_USER\SOFTWARE\Classes\CLSID\{222B6397-C8E8-4167-AC21-8DE8A25D922B}\Programmable]

 

64-bit Windows has both a 32-bit and 64-bit COM registration, routing the instantiation to different shim DLLs depending on the bitness

64-bit Windows, 32-bit COM registration

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\SOFTWARE\Classes\WOW6432Node\Operis.OAK5.Connect\CLSID]
@="{222B6397-C8E8-4167-AC21-8DE8A25D922B}"

[HKEY_CURRENT_USER\SOFTWARE\WOW6432Node\Classes\CLSID\{222B6397-C8E8-4167-AC21-8DE8A25D922B}]
@="Operis.OAK5.Connect"

[HKEY_CURRENT_USER\SOFTWARE\WOW6432Node\Classes\CLSID\{222B6397-C8E8-4167-AC21-8DE8A25D922B}\InprocServer32]
@="C:\\\\Users\\\\username\\\\AppData\\\\Local\\\\Operis\\\\OAK5\\\\Operis.OAK.AddIn.dll"
"ThreadingModel"="Apartment"

[HKEY_CURRENT_USER\SOFTWARE\WOW6432Node\Classes\CLSID\{222B6397-C8E8-4167-AC21-8DE8A25D922B}\ProgID]
@="Operis.OAK5.Connect"

[HKEY_CURRENT_USER\SOFTWARE\WOW6432Node\Classes\CLSID\{355D8B61-817A-48D1-81AC-FFDA39CA5F77}\Programmable]

64-bit Windows, 64-bit COM registration

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\SOFTWARE\Classes\Operis.OAK5.Connect\CLSID]
@="{222B6397-C8E8-4167-AC21-8DE8A25D922B}"

[HKEY_CURRENT_USER\SOFTWARE\Classes\CLSID\{355D8B61-817A-48D1-81AC-FFDA39CA5F77}]
@="Operis.OAK5.Connect"

[HKEY_CURRENT_USER\SOFTWARE\Classes\CLSID\{222B6397-C8E8-4167-AC21-8DE8A25D922B}\InprocServer32]
@="C:\\\\Users\\\\username\\\\AppData\\\\Local\\\\Operis\\\\OAK5\\\\Operis.OAK.AddIn64.dll"
"ThreadingModel"="Apartment"

[HKEY_CURRENT_USER\SOFTWARE\Classes\CLSID\{222B6397-C8E8-4167-AC21-8DE8A25D922B}\ProgID]
@="Operis.OAK5.Connect"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{222B6397-C8E8-4167-AC21-8DE8A25D922B}\Programmable]

Using OAK

During installation by .msi, the add-in will be installed in Excel using the following registry key and values:

HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\Excel\Addins\Operis.OAK5.Connect]
"Description"="The Key to Spreadsheet Correctness"
"FriendlyName"="Operis Analysis Kit 5.2"
"LoadBehavior"=dword:00000003

The key "Operis.OAK5.Connect" is the ProgID of the OAK COM class. Excel uses this to create the OAK COM object (the add-in).

The description and friendly name are used in the add-ins managers.

The LoadBehavior value must be 3 for Excel to load OAK on startup. If a user disables OAK in their COM add-ins manager, this value will be changed.

CONCLUSION

This section covered the COM registration of OAK as a COM component, and how OAK is added to the COM add-ins list in Excel.

This section does not cover the registry settings that are created to register the OAK type library for programming with OAK via its COM API, for example, in VBA.

Hopefully this section is helpful to IT staff when security settings in an environment prevent OAK from being installed properly.