SharePoint 2010 PowerShell: List all Web Applications deployed solutions

Post date: Aug 31, 2015 10:05:15 AM

When you need to know which wsp solution is deployed to which Web Application the following script can be of use. First, get all your web applications and iterate through them. While in the loop print web application name and application pool name. Last, iterate all solutions and print their names - like this:

# Get all installed solutions per web application

$contentWebAppServices = (Get-SPFarm).services |

? {$_.typename -eq "Microsoft SharePoint Foundation Web Application"}

foreach($webApp in $contentWebAppServices.WebApplications)

{

Write-Host "Web Application : " $webApp.name

Write-Host "Application Pool : " $webApp.ApplicationPool.Name

Get-SPSolution | ForEach-Object {

if ($_.LastOperationDetails.IndexOf($webApp.url) -gt 0)

{

Write-Host " Solutions:"

Write-Host " " $_.DisplayName

}

}

}

The output looks like this:

Web Application : SharePoint - 1337

Application Pool : SharePoint - 1337

Web Application : SharePoint - 80

Application Pool : SharePoint - 80

Solutions:

customer.intranet.wsp

The first web application (SharePoint - 1337) doesn't have deployed solutions, but the second (SharePoint - 80) has one.