Visual Studio与本地IIS和Express IIS之间的区别[重复]

问题描述 投票:4回答:1

这个问题在这里已有答案:

我正在尝试使用microsoft.office.interop.excel创建xlsx文件。

当我使用IIS Express在VS中运行Web应用程序时,它运行正常,但是当我在VS中使用本地IIS运行它时,我得到:

{“由于以下错误,检索具有CLSID {00024500-0000-0000-C000-000000000046}的组件的COM类工厂失败:80070005访问被拒绝。(HRESULT异常:0x80070005(E_ACCESSDENIED))。”}

我在我的服务器,服务器版本上得到了相同的例外:Windows Server 2016,IIS版本:10.0.14393.0

注意:DCOMC配置包含Microsoft Excel应用程序。

c# asp.net visual-studio iis excel-interop
1个回答
1
投票

当您执行IIS Express时,池使用您的Windows帐户,该帐户有权访问和启动Excel。

默认情况下,本地IIS使用ApplicationPoolIdentity,因此如果要执行外部程序集,最好的方法是通过Windows帐户(或为此用法创建的帐户)更改池的标识。

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.