代码之家  ›  专栏  ›  技术社区  ›  pete the pagan-gerbil

是否可以选择在本地安装IIS以远程访问IIS?

  •  0
  • pete the pagan-gerbil  · 技术社区  · 16 年前

    我有一个应用程序,它使用DirectoryEntry对象(在System.DirectoryServices中)访问远程计算机上运行在IIS上的网站的信息。

    运行应用程序的任何客户端计算机都需要安装IIS,或者应用程序在访问IIS信息时引发System.Runtime.InteropServices.ComException。

    有没有一种方法可以让我只包含一个dll、添加一个引用或类似的东西,以便在不安装客户端计算机的情况下访问这些信息?或者,是否有更好的方法来访问同样可以绕过此要求的信息(可能没有System.DirectoryServices)?

    编辑:再次查看此问题并查看问题 here here ,我认为无法使用DirectoryServices获取此信息。我会把它留给建议的备选方案,或者更多关于WBEM脚本的信息?

    2 回复  |  直到 15 年前
        1
  •  1
  •   Chris    16 年前

    因此,我理解的是,您试图从远程IIS服务器获取网站信息,但试图获取该信息的客户端必须安装了IIS才能查询这些远程系统。这并不是因为它使用某种Web应用程序来获取信息;它使用的某些功能是在安装IIS时安装的。

    你想要什么样的信息?您不能使用针对IIS计算机的WBEM脚本来获取所需的信息吗?

        2
  •  0
  •   pete the pagan-gerbil    15 年前

    经过进一步研究:

    Chris谈论的是WMI脚本和System.Management命名空间,只要您连接到IIS 6或更高版本,它就可以正常工作。

    DirectoryServices需要安装IIS,因为它向ADSI添加了额外的位,允许它查询IIS。此外,如果要使用IIS 5(Windows XP)或IIS 7(Windows 7)获得正确的ADSI组件,则需要安装IIS 6兼容性管理器。

    对于IIS 7,还有最后一种选择,即microsoft.web.administration命名空间。

    不幸的是,在我的场景中,我需要同时使用IIs5和IIs6,这意味着DirectoryServices是获得我需要的东西的唯一方法。幸运的是,我认为只需要安装一个兼容性管理器,而不需要安装整个IIS服务器(希望这是Windows XP上的一个选项…)

    接受克里斯作为对WBEM的建议的答案,即使我不能在这种情况下使用它!

    推荐文章