Я нахожусь в процессе настройки веб-сайта ASP.NET на Windows Server 2016. Веб-сайт также создает экземпляры COM-объектов, используя следующий код C #:
Type type = Type.GetTypeFromProgID(ProgID, Server, true);
dynamic object = Activator.CreateInstance(type);
Однако программа выдает исключение в строку Activator.CreateInstance
со следующей ошибкой:
Creating an instance of the COM component with CLSID {E2FB185E-F4D8-482A-B27B-A08BB4F9EAE9} from the IClassFactory failed due to the following error: 800a0005 Exception from HRESULT: 0x800A0005 (CTL_E_ILLEGALFUNCTIONCALL).
Я не получаю эту ошибку при установке на компьютере с Server 2012. Кроме того, я могу запускать этот код без ошибок на сервере 2016 года, если я запускаю его как приложение Windows под той же учетной записью, что и пул приложений.
У кого-нибудь есть предложения? Благодаря.