Ahm*_*emi 3 iis windows-xp iis-5 asp.net-4.0
我使用Windows XP_SP_3和IIS 5(本地主机),使用asp.net4构建站点并使用此代码:
Application appClass = new Application();
Document wordDoc = appClass.Documents.Add(Server.MapPath("~") + @"Files\tmp.docx");
wordDoc.SaveAs(@"e:\hp\Files\" + TextBox1.Text + ".docx");
wordDoc.Close();
Run Code Online (Sandbox Code Playgroud)
如果用VS2010运行网站,那就OK了.但如果使用IIS 5(本地主机)运行,请显示以下错误:
由于以下错误,检索具有CLSID {000209FF-0000-0000-C000-000000000046}的组件的COM类工厂失败:80070005访问被拒绝.(来自HRESULT的异常:0x80070005(E_ACCESSDENIED)).
描述:执行当前Web请求期间发生未处理的异常.请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息.
异常详细信息:System.UnauthorizedAccessException:由于以下错误,检索具有CLSID {000209FF-0000-0000-C000-000000000046}的组件的COM类工厂失败:80070005拒绝访问.(来自HRESULT的异常:0x80070005(E_ACCESSDENIED)).
ASP.NET无权访问所请求的资源.考虑将资源的访问权限授予ASP.NET请求标识.ASP.NET具有基本进程标识(IIS 5上通常为{MACHINE}\ASPNET,IIS 6和IIS 7上为网络服务,IIS 7.5上已配置的应用程序池标识),如果应用程序未模拟,则使用该标识.如果应用程序模拟通过,则标识将是匿名用户(通常为IUSR_MACHINENAME)或经过身份验证的请求用户.
要授予对文件的ASP.NET访问权限,请在资源管理器中右键单击该文件,选择"属性",然后选择"安全"选项卡.单击"添加"以添加适当的用户或组.突出显示ASP.NET帐户,并选中所需访问的框.
来源错误:
在执行当前Web请求期间生成了未处理的异常.可以使用下面的异常堆栈跟踪来识别有关异常的起源和位置的信息.
我打开组件服务>计算机>右键单击我的电脑>选择属性> COM完整性>启动和激活...>编辑默认>添加>高级>
我找不到用户IIS(IIS_IUSRS).所以选择ASP.NET并确定并检查本地启动和远程启动以及本地激活和远程激活.
休息系统并再次使用iis5运行站点.但再次显示错误!
小智 2
启动 Internet 信息服务 (IIS)。右键单击应用程序的虚拟目录,然后单击“属性”。单击目录安全选项卡。在“匿名访问和身份验证控制”下,单击“编辑”。确保未选中“匿名访问”复选框,并且仅选中“集成 Windows 身份验证”复选框。配置 ASP.NET 以通过模拟方式使用 Windows 身份验证,使用以下配置
...
<authentication mode="Windows"/>
<identity impersonate="true"/>
...
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
33241 次 |
| 最近记录: |