Hello Skyline,
One of our colleagues has the following error message when they try to open a Visio file directly from the Dataminer Cube application "Failed - Could not load Visio application".
Their workstation is configured the same as all other users running Visio Professional version 2303 (Build 16227.20212). Cube version is 10.3.2309.2008.
The permissions appear to be set correctly. Can you please help?
Here's how Cube tries to get/open your Visio application:
- Marshal.GetActiveObject("Visio.Application"). This fetches the currently active instance of Visio if any.
For this, the visio application needs to be registered in your registry. To figure this out, you can run "regedit" and check if the following entry is available: Computer\HKEY_CLASSES_ROOT\Visio.Application - If no active visio instance is found, we will create the visio application with new Microsoft.Office.Interop.Visio.Application(). I didn't dive into the source code of this yet, but I can check for specifics if my answer doesn't get you anywhere.
In short, the first things I would try are:
- Restart my PC
- Check if the visio application is available in your installed apps
- Check if doing "edit in visio" while visio is already open has the same issue as doing it while there is no visio instance open
- Check the registry key as described above
Hi Toon and Bert,
Many thanks for your reply. We checked the registry and found no entries for Visio.Application. Which seems strange as I’ve checked on another PC and there are several keys for Visio.Application. We didn’t find the Microsoft.Office.Interop.Visio.Application() key, do we need to add this manually?
I’ve added the Cube log (requested by Bert) in this exchange.
Message: Could not open the Visio application
Exception: System Runtime InteropServices, COMException (0xB0040154): Retrieving the COM class factory for component with CLSID {00021A20-0000-0000-CO00-000000000046} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)
at System Runtime Remoting RemotingServices AllocateUninitalizedObject(Runtime Type objectType)
at System. Runtime Remoting Activation. ActivationServices,Createlnstance(RuntimeType serverlype)
at System. Runtime Remoting Activation. ActivationServices sCurrentContextOK(RuntimeType server Type, Objectl] props, Boolean bNewOb)
at System RuntimeTypeHandle Createlnstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Booleand canBeCached, RuntimeMethodHandlelnternslé: ctor, Boolean bNeedSecurityCheck)
at System RuntimeType.CrestelnstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawiMarké: stackMark)
at System. Activator. Createlnstance(Type type, Boolean nonPublic)
at System. Activator. Createlnstance( Type type)
at Skyline DataMiner Client VisualOverviewEditing Misc. VisioApplicationHelper GetVisioApplication(Boolean force]
at Skyline. DataMiner. Client. Visual Overview. Visiolnterop. GetVisioApplication(Visual Overview visual Overview, Boolean force)
It indeed seems like the registry is not aware of any Visio installation. The safest thing would be to repair/re-install visio with the installer.
The repair fixed the problem. Thanks very much for your help.
Glad I could help Wade! If you could mark this as solved, we can close this up. Good luck further with Visual Overview and feel free to reach out if you need us!
Would it be possible to check if there is an error with more details in System Center > Logging > Cube?