繁体   English   中英

LogParser访问被拒绝错误

[英]LogParser Access Denied error

我使用Logparser解析IIS日志并在网页上显示信息。 在我的开发环境中一切正常,但是一旦我将应用程序发布到服务器,我就会收到以下错误:

由于以下错误,检索具有CLSID {8CFEBA94-3FC2-45CA-B9A5-9EDACF704F66}的组件的COM类工厂失败:80070005访问被拒绝。 (来自HRESULT的异常:0x80070005(E_ACCESSDENIED))。

描述:执行当前Web请求期间发生未处理的异常。 请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

异常详细信息:System.UnauthorizedAccessException:由于以下错误,检索具有CLSID {8CFEBA94-3FC2-45CA-B9A5-9EDACF704F66}的组件的COM类工厂失败:80070005访问被拒绝。 (来自HRESULT的异常:0x80070005(E_ACCESSDENIED))。

这个错误意味着什么,我该如何解决?

您可能需要让用户在服务器上运行DCOM权限才能运行它。 DCOM配置位于组件服务中,您可以看到每个条目的GUID,因此您应该能够识别相关条目。

然后编辑它的安全权限,并为相关用户提供启动和激活权限以及访问权限。

由于缺少权限,此错误即将发生。 您需要为虚拟目录中的IIS Users / Guest授予读/写权限。

IIS 7+可能未配置为运行32位应用程序。 从应用程序池中,导航到“高级设置”和“启用32位应用程序”。

我遇到了您描述的相同问题,我采取的解决方法包括:

  • 在应用程序池下启用32位应用程序
  • 从日志文件夹(inetpub / logs / LogFiles / {site},授予对应用程序池标识的访问权限
  • 将LogParser.dll和Interop.MSUtil.dll复制到站点的bin文件夹

我用来解决问题的步骤如下:

  1. 转到IIS管理器
  2. 导航到相关网站
  3. 为您的默认网站启用ASP.NET身份验证

这应该清除许可问题。

为站点创建专用应用程序池并将其标识切换为“网络服务”。 为我解决了这个问题

我不得不尝试三件事:

1-查看LogParser.dll是否已使用regsvr32.exe注册;
2-将应用程序池的权限更改为网络服务;
3-在应用程序池上接受32位应用程序;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM