I have seen quite a few articles mentioning Add-PSSnapin Microsoft.SharePoint.PowerShell. Quite a lot of variations I have found for loading the Snap-in. But I quite like this version:

 

function Load-SnapIn
{
$ver = $host | select version
if($Ver.version.major -gt 1)
{
$Host.Runspace.ThreadOptions = “ReuseThread”
}

if(!(Get-PSSnapin Microsoft.SharePoint.PowerShell -ea 0))
{
Write-Debug “Loading Microsoft.SharePoint.PowerShell”
Add-PSSnapin Microsoft.SharePoint.PowerShell
}

}

But if you load a snapin should you not unload the snap in when you’re done? I found the Remove-PSSnapin that does this for me:

Function Unload-SnapIn
{
Remove-PSSnapin Microsoft.SharePoint.PowerShell
}

 

Advertisements