4

我需要使用 PowerShell 脚本 (v2.0) 检索所有已部署的 SharePoint 解决方案的详细信息,如管理中心 > 操作 > 解决方案管理(又名解决方案商店)中所示。任何人都可以提供有关如何通过 SharePoint API 从 SharePoint 解决方案商店中检索此信息的任何指导吗?

谢谢,魔术师安迪。

4

4 回答 4

8

这实际上很容易做到。您连接到 SP 场并请求 get_Solutions。

这是一个例子:

# Connect to the Farm
$SPfarm = [Microsoft.SharePoint.Administration.SPFarm]::get_Local()

# What Solution are we looking for?
$solution = "sharepointlearningkit.wsp";

# Get the solutions
$currentSolution = $SPfarm.get_Solutions() | Where-Object { $_.DisplayName -eq $solution; }
$currentSolution;
于 2010-02-17T08:18:40.970 回答
3

根据米切尔的 回答,我使用过:

    [void][System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint")

    function Get-LocalSPFarm()
    {
       return [Microsoft.SharePoint.Administration.SPFarm]::Local
    }

    function List-Solutions()
    {
        $farm = Get-LocalSPFarm        
        foreach ($solution in $farm.Solutions) 
        {
            Write-Host($solution.DisplayName)
            # Get-Member -InputObject $solution -MemberType property
        }
    }

所有功劳归功于米切尔!

于 2010-02-17T11:56:29.333 回答
2

您可以stsadm.exe -o enumsolutions从您的 powershell 脚本中调用。它返回 XML 数据,您可以轻松地将其转换为[xml]数据类型并从中查看您需要的任何内容。
(stsadm 住在c:\Program Files\Common Files\Microsoft Shared\web server extensions\12\bin

输出包含与此类似的语句

<Solution Name="yoursolution.wsp">
  <Id>ab693dcd-6483-45ad-abba-9c996c67b6e0</Id>
  <File>yoursolution.wsp</File>
  <Deployed>TRUE</Deployed>
  <WebApplicationSpecific>TRUE</WebApplicationSpecific>
  <ContainsGlobalAssembly>TRUE</ContainsGlobalAssembly>
  <ContainsCodeAccessSecurityPolicy>FALSE</ContainsCodeAccessSecurityPolicy>
  <Deployment WebApplication="http://devserver/" />
  <LastOperationResult>DeploymentSucceeded</LastOperationResult>
  <LastOperationTime>10/26/2009 9:06 AM</LastOperationTime>
</Solution>
于 2010-01-21T15:26:37.780 回答
1

这是我用来拉回解决方案信息的三个 powershell cmdlet。与上面的相比,我的很简单,但我想我还是会提交它们:)

在 SP2010 管理外壳中

列出所有解决方案。返回解决方案名称、ID 和部署状态

获取解决方案

列出特定解决方案的所有属性

获取-spsolution-identity | 选择 *

列出所有解决方案、属性和输出到要读取的文件:)

得到解决方案 | 选择 * | 输出文件 c:\solutions.txt

于 2013-01-18T20:22:29.400 回答