I'm having trouble with a .NET desktop application, which depends on an old ActiveX out-of-process component (built from VB6). When I run the application normally (with my admin account) everything looks OK, but when I run it through Citrix (with a normal user account) I get the following error:
2018-09-11 14:05:30,585 [1] [(null)] ERROR - System.TypeInitializationException: The type initializer for 'PortWin.Server.Business.ServerBusinessContainer' threw an exception. ---> System.UnauthorizedAccessException: Retrieving the COM class factory for component with CLSID {D9E3C57D-331D-4840-88A1-199633F0B204} failed due to the following error: 80070005 Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED)).
at System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck)
at System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
at System.RuntimeType.CreateInstanceDefaultCtor(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
at System.Activator.CreateInstance(Type type, Boolean nonPublic)
at System.Activator.CreateInstance(Type type)
[...]
Does anybody know what might be the problem? I'm guessing there must be some kind of access rights related to the loading of my ActiveX component, but I'm struggling to find the relevant setting.
User contributions licensed under CC BY-SA 3.0