允许连接到 IIS 服务的用户运行实例化 COM 对象的进程的最佳方法是什么?
使用管理员帐户在计算机上运行基于 COM 的进程可以正常工作。但是,在 IIS 中托管该应用程序会引发以下 COM 异常:
检索 CLSID 为 {yadda-yadda-yadda} 的组件的 COM 类工厂失败,原因是出现以下错误...类未注册。
该类确实已注册。使用管理员帐户可以正常工作。我读了一些资料,看起来我需要让匿名帐户在机器上使用管理员帐户。但是,出于安全原因,我的管理员不想这样做。
最佳做法是什么?我该如何设置?
更新:顺便说一句,我们尝试将匿名用户设置为本地管理员帐户,但仍然收到错误消息。
答案1
我找到了解决方案。许多论坛帖子都说这是权限问题。然而,此链接发现是 AppPool 的问题。结果发现,你必须配置应用程序池以允许 32 位应用程序。我们的服务器是 64 位服务器。如果你进入应用程序池的高级设置,有一个选项“启用 32 位应用程序”。将其设置为 true。轰!之后,一切顺利。