uri*_*rig 3 iis powershell tfs-power-tools web-admin
我正在尝试编写一个PowerShell脚本来自动执行IIS网站部署。我试图在Windows Server 2008 R2计算机上的32位以下环境中运行脚本:
C:\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell.exe
Run Code Online (Sandbox Code Playgroud)
每当我运行这样的WebAdministration命令时:
Get-Website -Name "MYWebsite"
Run Code Online (Sandbox Code Playgroud)
我收到这样的错误:
Get-Website : Retrieving the COM class factory for component with CLSID {688EEE
E5-6A7E-422F-B2E1-6AF00DC944A6} failed due to the following error: 80040154.
At line:1 char:12
+ Get-Website <<<< -Name "MyWebsite"
+ CategoryInfo : NotSpecified: (:) [Get-Website], COMException
+ FullyQualifiedErrorId : System.Runtime.InteropServices.COMException,Micr
osoft.IIs.PowerShell.Provider.GetWebsiteCommand
Run Code Online (Sandbox Code Playgroud)
切换到64位版本的PowerShell.exe可以解决此问题,但使我无法同时使用Microsoft Team Foundation Server 2008 Power Tools PSSnapin,这对我来说是不行的。
知道我该如何克服吗?提前致谢。
运行:
C:\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell.exe
Run Code Online (Sandbox Code Playgroud)
实际上加载了32位版本的Powershell ;-)
这显然不是您想要的。在system32中运行版本以获取64位版本。对真的。
您可以像这样验证:
ps> [intptr]::size
4
Run Code Online (Sandbox Code Playgroud)
如果返回4,则为32位。64位Powershell将返回8。
-Oisin
小智 0
只是为了连接点。“urig”在另一个主题中回答了他自己的问题: TFS Power Tools 2008 Powershell Snapin won't run on 64-bit in Windows 2008 R2
“Microsoft 的 Cathy Kong 非常友善地为我提供了解决此问题的方法。完整的详细信息可以在 MSDN TFS PowerTools 论坛中找到:http ://social.msdn.microsoft.com/Forums/en-US/ tfspowertools/线程/a116799a-0476-4c42-aa3e-45d8ba23739e/?prof=必需
修复如下并且对我来说效果很好:
请保存以下内容并将其另存为*.reg文件并导入到注册表(只需双击*.reg文件,双击确定)
Windows 注册表编辑器版本 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\PowerShellSnapIns\Microsoft.TeamFoundation.PowerShell] "PowerShellVersion"="2.0" "Vendor"="Microsoft Corporation" "Description"="这是一个包含团队的 PowerShell 管理单元基础服务器 cmdlet。” "VendorIndirect"="Microsoft.TeamFoundation.PowerShell,Microsoft" "DescriptionIndirect"="Microsoft.TeamFoundation.PowerShell,这是一个包含 Team Foundation Server cmdlet 的 PowerShell 管理单元。" “版本”=“10.0.0.0”“ApplicationBase”=“C:\ Program Files(x86)\ Microsoft Team Foundation Server 2010 Power Tools”“AssemblyName”=“Microsoft.TeamFoundation.PowerTools.PowerShell,版本= 10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" "ModuleName"="C:\Program Files (x86)\Microsoft Team Foundation Server 2010 Power Tools\Microsoft.TeamFoundation.PowerTools.PowerShell.dll" "CustomPSSnapInType"="Microsoft.TeamFoundation.PowerTools .PowerShell.TFPSSnapIn”
| 归档时间: |
|
| 查看次数: |
5396 次 |
| 最近记录: |