2011-11-05 117 views
2

我正在写将本地主机上运行一些PowerShell脚本来创建新的IIS网站等一个小型Web应用程序我有脚本ISE工作正常,64位,但是当试图在32位上运行他们我得到这样的错误:运行PowerShell脚本管理单元中

Get-ChildItem IIS:\Sites 
Get-ChildItem : Cannot retrieve the dynamic parameters for the cmdlet. Retrieving the COM class factory for component with CLSID {688EEEE5-6A7E-422F-B2E1-6AF00DC944A6} failed due to the following error: 80040154. 

我已经试过下载管理单元的x86版本,但安装程序将停止告诉我使用“程序和功能”来安装其我尝试过,但无法找到未启用的应该是。

这是一个问题,因为.NET应用程序似乎运行在32位的PowerShell脚本,所以我的2个问题是:

  1. 我可以从.NET
  2. 可以运行在64位这些脚本我在64位操作系统上以32位方式安装这些管理单元
+0

仍然没有找到解决这一不幸的是,尽管该项目已被搁置,现在 – dmgdotnet

+0

根据不同的Windows服务器操作系统上,**的** WebAdministration模块/卡扣式可能不存在。参见[相关SO帖](http://stackoverflow.com/a/30512464/175679)。 – SliverNinja

回答

1

PowerShell安装32位和64位Web管理模块。当您创建运行空间,你尝试使用IIS:驱动器(提供者)之前执行Import-Module WebAdministration

+1

是的,我在PowerShell中32和64上运行相同的脚本。如果我只是用一个简单的脚本如下所示: 进口模块WebAdministration; Get-Website |其中{$ _。Name -eq“ExampleSite”} 我得到: Get-Website:检索组件的COM类工厂.... 在64位powershell中正常工作 – dmgdotnet

+0

您是否以管理员身份运行在启用UAC的Vista/Win7上)。在C#exe中,哪个公寓主要装饰有(STA或MTA)?也请尝试将您的应用程序的平台目标设置为x64,并查看它是否适用于yrou x64系统。如果可行,并且您需要同时支持x86和x64,请尝试将平台目标设置为AnyCPU。顺便说一句,其他人已经遇到了这个问题。请参阅http://forums.iis.net/t/1163290.aspx。 –

相关问题