【发布时间】:2011-04-01 03:30:40
【问题描述】:
嗨,
我有一个 powershell 部署脚本,它将文件从 svn 下载到一个目录中,然后更新 IIS 设置以将站点指向新文件夹。它一直运行良好,直到对服务器进行了一些更新。现在,当我尝试运行脚本时,它会出错
[Void][Reflection.Assembly]::LoadWithPartialName("Microsoft.Web.Administration")
$serverManager = New-Object Microsoft.Web.Administration.ServerManager
错误是
New-Object : Exception calling ".ctor" with "0" argument(s):
"Retrieving the COM class factory for component with CLSID {B15183DD-75F9-42DF-8E57-C8B57692F134} failed due to the following error: 80040154."
At C:\Users\administrator.LAYERXNETWORKS\AppData\Local\Temp\2\e72ec49f-353f-4dc0-877c-ef67f6b49bab.ps1:2 char:28
+ $serverManager = New-Object <<<< Microsoft.Web.Administration.ServerManager
+ CategoryInfo : InvalidOperation: (:) [New-Object], MethodInvocationException
+ FullyQualifiedErrorId : ConstructorInvokedThrowException,Microsoft.PowerShell.Commands.NewObjectCommand
我听说这个错误通常是由于没有安装类引起的。
服务器正在运行带有 IIS 7.5 的 Windows 2008 R2
【问题讨论】:
-
您是否尝试查看 COM 组件 CLSID {B15183DD-75F9-42DF-8E57-C8B57692F134} 是否已在您的注册表中注册,并且它引用的 DLL 是否可加载。您是否注意使用正确的 Powershell(32 位与 64 位)加载脚本。
标签: iis powershell windows-server-2008-r2