[转载]DirectoryEntry配置IIS7出现ADSI Error:未知错误(0x80005000)

一、错误情况

环境:win7+iis7.0

DirectoryEntry配置IIS7出现如下错误

或者是

下面一段代码在IIS6.0下运转正常,但IIS7.0下运转会出错:

System.DirectoryServices.DirectoryEntry iisServer;
iisServer
= new System.DirectoryServices.DirectoryEntry("IIS://localhost/W3SVC/1");
System.DirectoryServices.DirectoryEntry rootFolder
=
iisServer.Children.Find("Root","IIsWebVirtualDir");//此处抛出异常

异常内容如下:

[System.Runtime.InteropServices.COMException] {"Unknown error
(0x80005000)"} 
System.Runtime.InteropServices.COMException

Unknown error (0x80005000)
   at
System.DirectoryServices.DirectoryEntry.Bind(Boolean
throwIfFail)
   at
System.DirectoryServices.DirectoryEntry.Bind()
   at
System.DirectoryServices.DirectoryEntry.get_IsContainer()
   at
System.DirectoryServices.DirectoryEntries.CheckIsContainer()
   at
System.DirectoryServices.DirectoryEntries.Find(String name, String
schemaClassName)

二、错误分析

这段异常代码表明 IIS://localhost/W3SVC/1 的ADSI
provider不存在或者无法访问。

打开IIS管理器你可以看到服务器的localhost(即默认站点)是存在的并正在运行,且主站点ID确实是1。这说明问题是出现在 IIS://localhost的ADSI
provider。

三、错误原因

win7使用的是iis7,而IIS 7默认并没有安装ADSI provider。

四、解决方法 

要解决这个问题就得安装“IIS 元数据库和IIS 6配置兼容性”。

“控制面板”->“程序和功能”->面板左侧“打开或关闭windows功能”->“Internet信息服务”->“Web管理工具”->“IIS
6管理兼容性”->“IIS 元数据库和IIS 6配置兼容性”。

如下图所示:

五、更好的解决方法

更理想的解决方式是用 WMI provider操作IIS 7 ,可参见此篇文章http://msdn.microsoft.com/en-us/library/aa347459.aspx

六、Windows Server 2008出现这种错误怎么办?

在Windows Server 2008下,使用角色服务安装完“IIS 元数据库和IIS
6配置兼容性”,还有可能出现如下错误:

[System.Runtime.InteropServices.COMException] {"Access is
denied.\r\n"} System.Runtime.InteropServices.COMException
ErrorCode 0x80070005

Access is denied.

at System.DirectoryServices.DirectoryEntry.Bind(Boolean
throwIfFail)
   at
System.DirectoryServices.DirectoryEntry.Bind()
   at
System.DirectoryServices.DirectoryEntry.get_IsContainer()
   at
System.DirectoryServices.DirectoryEntries.CheckIsContainer()
   at
System.DirectoryServices.DirectoryEntries.Find(String name, String
schemaClassName)

这是因为 Windows Server 2008被UAC(User Account Control,用户账户控制)锁定了. 
你需要用管理员(Administrator)账户执行这个程序. 另一种方式是设置运行此程序的账户拥有如下权限: Logon as a
Service"/ "Logon as a Batch Job"

http://blog.csdn.net/ts1030746080/article/details/8741399

[转载]DirectoryEntry配置IIS7出现ADSI Error:未知错误(0x80005000),布布扣,bubuko.com

时间: 2024-10-11 13:31:30

[转载]DirectoryEntry配置IIS7出现ADSI Error:未知错误(0x80005000)的相关文章

DirectoryEntry配置IIS7出现ADSI Error:未知错误(0x80005000)

一.错误情况 环境:win7+iis7.0 DirectoryEntry配置IIS7出现如下错误 或者是 下面一段代码在IIS6.0下运转正常,但IIS7.0下运转会出错: System.DirectoryServices.DirectoryEntry iisServer;iisServer = new System.DirectoryServices.DirectoryEntry("IIS://localhost/W3SVC/1");System.DirectoryServices.

[转载] scribe配置

目录(?)[-] Scribe can be configured with Global Configuration Variables Store Configuration Store Configuration Variables File Store Configuration Network Store Configuration Buffer Store Configuration Bucket Store Configuration Null Store Configuratio

win7和win2008 r2下配置IIS7(ASP.net运行环境)

win7和win2008 r2下配置IIS7(ASP.net运行环境) 1.先要设置应用程序池(ApplicationPool)为Classic.NETAppPool,而不是默认的DefaultAppPool,可以在网站目录里对每个站点设置,也可以在站点进行单独设置. 控制面板--系统和安全--管理工具--Internet信息服务(IIS)管理器,打开IIS管理器.选中左侧的默认网站,单击右侧的高级设置,将应用程序池设置为Classic.NETAppPool. 2.选中左侧的“应用程序池”,选中

IIS7 和IIS8.0 HTTP 错误 500.19 - Internal Server Error 问题的解决方案

百度了好久,没找到解决问题确切的答案,我也知道肯定是权限的问题,当然,经过一番尝试之后,终于解决了,解决之道如下(个人方法,可以一试): 1.找到你的配置文件所在的文件夹,我的是 E:\源码\ASP.NET\DtCms10Beta2 2.右键,点击属性,切换到"安全"选项卡上,将 IIS-IUSRS 用户组添加到安全列表中,并按需求赋予其权限(我赋予了修改的权限),更改后如下图: 3.查看 web.config 的安全权限,如果有此用户组的权限则说明成功,否则进行下一步: 4.退回到根

Win7 64位旗舰版系统安装和配置IIS7.0的方法

Win7 64位旗舰版系统安装和配置IIS7.0的方法分享给大家,IIS是Internet Information Services的缩写,是一个World Wide Web server.Gopher server和FTP server全部包容在里面. IIS意味着你能发布网页,并且有ASP(Active Server Pages).JAVA.VBscript产生页面,有着一些扩展功能.笔者就给大家分享下Win7系统下IIS7的详细安装配置. 推荐:雨林木风Ghost win7系统下载   操

Redis主从配置异常解决:Error condition on socket for SYNC: Connection refused

Redis主从配置异常解决:Error condition on socket for SYNC: Connection refused 在docker中搭建的redis主从集群时,从服务器上的redis日志报错: 32677:S 08 Feb 16:14:38.947 * Connecting to MASTER 172.168.10.70:6379 32677:S 08 Feb 16:14:38.948 * MASTER <-> SLAVE sync started 32677:S 08

遇到IIS7配置PHP出现403和404错误的解决办法

服务器要配置PHP,总是出现403错误.服务器是新装的,操作系统是windows server 2008 R2,装的IIS7. IIS里PHP和本地服务器对比了好几遍,都没到出错的原因,后来通过cmd里运行php -v,发现了问题所在,原来是没装vc_redist_x64_2012.exe引用的. 装过以后,先建了一个应用程序站点,PHP运行正常,但站点根目录下的PHP程序,就是跑不起来,提示404.17错误. 站点根目录的PHP环境也是按它下面的应用程序方法配置的,很是想不通,修改应用程序池也

IIS7 和IIS8.0 HTTP 错误 500.19 - Internal Server Error 问题的解决方式

百度了好久,没找到解决这个问题确切的答案,我也知道肯定是权限的问题,当然,经过一番尝试之后,最终攻克了,解决之道例如以下(个人方法,能够一试): 1.找到你的配置文件所在的目录,我的是 E:\源代码\ASP.NET\DtCms10Beta2 2.右键,点击属性,切换到"安全"选项卡上,将 IIS-IUSRS 用户组加入到安全列表中,并按需求赋予其权限(我赋予了改动的权限),更改后例如以下图: 3.查看 web.config 的安全权限,假设有此用户组的权限则说明成功,否则进行下一步:

springboot 配置jpa启动报Error processing condition on org.springframework.boot.autoconfigure.data.web.SpringDataWebAutoConfiguration.pageableCustomizer

springboot +gradle 配置jpa启动报Error processing condition on org.springframework.boot.autoconfigure.data.web.SpringDataWebAutoConfiguration.pageableCustomizer 经过一步步查看删选是因为spring-data-jpa包的版本冲突导致. 解决方案: 修改gradle的build.gradle配置文件 a.添加plugin("org.springfram