Export SharePoint solutions (.wsp) from SharePoint farm

Sometimes, you are setting up a new SharePoint environment and you need to make it similar to one of the existing SharePoint farms. However, there are few custom solutions for which you don’t have appropriate .wsp file ready or you can’t figure out which version of the .wsp was deployed on the server.

You can use below script to export all SharePoint solutions from an existing farmRead More »

Install a dll file in GAC using PowerShell

If you need to install a dll without using Gacutil, you can do it using PowerShell. For this, open a PowerShell prompt as administrator and run below commands:

[System.Reflection.Assembly]::Load("System.EnterpriseServices, Version=, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")
$publish = New-Object System.EnterpriseServices.Internal.Publish
$publish.GacInstall("F:\Dlls for FBA\Metavrse.SharePoint.SyncLib.dll")
view raw Deploy-Dll-GAC.ps1 hosted with ❤ by GitHub

Do note that the path in the last command should be full path for dll. Otherwise it won’t work.Read More »

Create SharePoint 2016 Dev/test farm in Azure

In this post, we’ll discuss the steps required to create SharePoint Server 2016 dev/test farm hosted in Microsoft Azure. We’ll have minimum configuration which is to have a domain controller, a sql server and a SharePoint server. Do note that all of the 3 servers need to be in the same subnet and vnet so that they can connect to each other using internal IP address for them. We off course  don’t want to redirect our traffic through firewalls for NSG (network security group). So all of these 3 servers will be in the same NSG for simplicity of deployment.Read More »

Enable PSRemoting for SharePoint Servers

PSRemoting is a useful feature. Introduced with PowerShell v2, it remains one of the most useful features. It enables you to remotely login into any SharePoint server and do your work. However, SharePoint does not play very nice with the PSremoting like other MS servers like exchange.

You can use below steps to enable psremoting to correctly configure your SharePoint servers to allow certain users access to run SharePoint PowerShell cmdlets.Read More »

Understanding MinRole in SharePoint 2016 and improvement it brings

Microsoft released SharePoint 2016 with much marketing on two new server end features:

  1. MinRole
  2. Zero downtime patching

The focus of this blog post will be solely limited to MinRole farms and explaining why it is so important and the improvements it brings.

As you are aware, SharePoint 2013 and 2010 were role agnostic farms. What this really meant is that you were able to run any service on any server in the farm. Read More »

Identify VM’s running status in Azure Resource Manager

Unlike classic model, there is no direct cmdlet to know the status for virtual machine provisioned using resource manager model. We can use the following commands to know the status of a particular virtual machine:

$resourceGroupName = "sharepointvms"
$vmName = "indspstd01"
$vmStatuses = $(Get-AzureRmVM -ResourceGroupName $resourceGroupName -VMName $vmName -Status).Statuses
foreach($vmStatus in $vmStatuses){
 if($vmStatus.Code -ne "ProvisioningState/succeeded")
 Write-Output "$vmName status is `"$($vmStatus.displaystatus)`""

Replace the value of Read More »

Creating an user account named administrator in Azure VM

We all know that while creating a virtual machine in Microsoft Azure (whether in classic or resource manager portal), it won’t allow to create an administrative user account named as ‘administrator’ at the time of provisioning. Not that its a good practice anyway and security pro’s have been advising to not create it from a long time. However some old legacy applications might not work if it does not exist. So once the virtual machine is provisioned, you can go ahead and create it fine using local users and groups console (or you can use shortcut lusrmgr.msc). Read More »

Configure Azure Automation hybrid runbook workers and run hybrid runbooks

Azure automation is Microsoft cloud based workflow engine that can be used to run workflows in Azure. It started out its life as engine to operate against azure resources. However with time it gained the capability to run against on-premises resources as well by introduction of new feature called hybrid runbook workers.

You can think of hybrid runbook workers as one or more servers (think high availability) in your on-premise datacenter that can act on behalf of runbooks located in azure cloud. It has the capability to execute a runbook (known as hybrid runbook) which can be as simple as PowerShell script or as complex as a PowerShell workflow can be. So you can use it to to orchestrate complex, repetitive, or time-consuming tasks for your on-premise servers.Read More »