Voici une function PowerShell permettant de télécharger localement, l’ensemble des solutions de ferme déployées dans un environnement SharePoint.
function Get-Installed-Farm-Solutions([string]$SavedPath, [boolean]$Export)
{
[System.Reflection.Assembly]::LoadWithPartialName(“Microsoft.SharePoint”) > $null
[System.Reflection.Assembly]::LoadWithPartialName(“Microsoft.SharePoint.Administration”) > $null
$mySPFarm = [Microsoft.SharePoint.Administration.SPFarm]::Local
Write-Host ” ————————————————— ”
Write-Host “Build Version:”, $mySPFarm.BuildVersion
Write-Host “Servers Number:”, $mySPFarm.Servers.count
$mySolutions = $mySPFarm.Solutions
Write-Host ” ————————————————— ”
Write-Host “Solutions Total:”, $mySolutions.count
foreach($mySolution in $mySolutions)
{
Write-Host ” ————————————————— ”
Write-Host ” Solution ID:”, $mySolution.SolutionID
Write-Host ” Solution Name:”, $mySolution.Name
Write-Host ” Solution File:”, $mySolution.SolutionFile
Write-Host ” Solution Deployed Status:”, $mySolution.Deployed
if($Export)
{
[string]$myOutputPath = $SavedPath + $mySolution.Name
Write-Host ” Solution exported to:”, $myOutputPath
$mySolution.SolutionFile.SaveAs($myOutputPath);
}
Write-Host ” ————————————————— ”
}
Write-Host ” ————————————————— ”
}
Get-Installed-Farm-Solutions “D:\” $true