SQL Server version

All SQLServer service packs are cumulative, meaning that each new service pack contains all the fixes that are included with previous service packs and any new fixes.

Quick summary:

RTM (no SP) SP1 SP2 SP3 SP4
 SQL Server 2016 CTP2.4
 SQL Server 2014 12.0.2000.8 12.0.4100.1
 SQL Server 2012 11.0.2100.60 11.0.3000.0 11.0.5058.0
 SQL Server 2008 R2 10.50.1600.1 10.50.2500.0 10.50.4000.0 10.50.6000.34
 SQL Server 2008 10.0.1600.22 10.0.2531.0 10.0.4000.0 10.0.5500.0 10.0.6000.29
 SQL Server 2005 9.0.1399.06 9.0.2047 9.0.3042 9.0.4035 9.0.5000
 SQL Server 2000 8.0.194 8.0.384 8.0.532 8.0.760 8.0.2039
 SQL Server 7.0 7.0.623 7.0.699 7.0.842 7.0.961 7.0.1063

How to uninstall with msiexec using product id guid

You can find the product code by perusing the registry from this base key: HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionUninstall . Press F3 and search for your product name. (If it’s a 32-bit installer on a 64-bit machine, it might be under HKEY_LOCAL_MACHINESOFTWAREWow6432NodeMicrosoftWindowsCurrentVersionUninstall instead).

Finally, you can find the product code also by using PowerShell:

get-wmiobject Win32_Product | 
Format-Table IdentifyingNumber, Name


when you found the Guid ID you can use msiexec to uninstall the application

msiexec /x {A4BFF20C-A21E-4720-88E5-79D5A5AEB2E8}


Task sequence fails in Configuration Manager if software updates require multiple restarts

Assume that a Microsoft System Center Configuration Manager task sequence that uses the “Install Software Updates” step installs a software update that triggers multiple restarts after the task sequence successfully runs the Install Software Updates task. In this situation, the task sequence can fail and generate the following error message:

Task Sequence environment not found

Note You can avoid this issue in System Center 2012 Configuration Manager Service Pack 2 and System Center 2012 R2 Configuration Manager Service Pack 1 by using the new Retry option in the Install Updates task sequence step. For more information, refer to the Install Software Updates documentation on the Microsoft TechNet website.


The first restart that is initiated by the software update is controlled by the task sequence. However, the second restart request is initiated by a Windows component (typically, Component-Based Servicing) and is not controlled by the task sequence. Therefore, the task sequence execution state is not saved before the restart because the second restart is not controlled by the task sequence. When the task sequence resumes after the second restart, no state is available to continue successfully.

Continue reading Task sequence fails in Configuration Manager if software updates require multiple restarts

Unlocking ConfigMgr 2012 Objects

here is what you need to do when you get the error blow in SCCM2012 console:
“Cannot edit the object, which is in use by ‘’ at Site ‘’.”

This happened as the result of the ConfigMgr console crashing while he had the object open.

To resolve this issue connect with sql management studio to the SQL server where the database is running and then execute the code below:

 select * from SEDO_LockState where LockStateID <> 0

The query above will get you a list of possible locks on the dB, with the code below you can remove the lock:

DELETE from SEDO_LockState where LockID = ‘<LockID of the record identified in the previous query>’

Once the record is removed, you should be able to modify the object.

PowerShell – How to find details of Operating System

There were several instances where I had to find details of the operating system using PowerShell. Here, I am providing several PowerShell snippets that return various details of the Operating System.

Name of the Operating System

PS C:> (Get-WmiObject Win32_OperatingSystem).Name

Is Operating System 32-bit or 64-bit

PS C:> (Get-WmiObject Win32_OperatingSystem).OSArchitecture

Name of the Machine

PS C:> (Get-WmiObject Win32_OperatingSystem).CSName

There are many more properties of the Operating System that are exposed. To obtain more details, run the following

PS C:> Get-WmiObject Win32_OperatingSystem | Get-Member

* Tested using PowerShell 3.0

Prompt for Credentials When Accessing FQDN Sites From a Windows 8.1 and higher

Consider the following scenario.
On a computer that is running Windows Vista or higher, you do not configure a proxy in Windows Internet Explorer.
You use Web Distributed Authoring and Versioning (WebDav) to access a fully qualified domain names (FQDN) site.
In this scenario, you are prompted to enter your credentials, even though the user account that you are using has sufficient permission to access this site.

For example, when you open a Microsoft Office file from a Microsoft Office SharePoint site by using 2007 Microsoft Office on a Windows Vista-based client computer that has no proxy configured, you are prompted for authentication.

You may also see the following error when working with moved folders via explorer view:

“Your client does not support opening this list with Windows Explorer.”

Continue reading Prompt for Credentials When Accessing FQDN Sites From a Windows 8.1 and higher

Exchange 2013 management tools

Use unattended Setup mode to install the Exchange 2013 management tools

  1. Log on to the computer on which you want to install the Exchange 2013 management tools.
  2. Navigate to the network location of the Exchange 2013 installation files.
  3. At the command prompt, run the following command.
Setup.exe /Role:ManagementTools /IAcceptExchangeServerLicenseTerms

SCCM 2012 client fails to install Windows 10 Build 10049

When testing the latest Build of Windows 10 I got an error installing the Configuration Manager 2012 R2 client, it fails installing the Windows Update agent with the following error in the CCMSetup.log file.

“File ‘C:WINDOWSccmsetupWindowsUpdateAgent30-x64.exe’ returned failure exit code 775. Fail the installation.”

Continue reading SCCM 2012 client fails to install Windows 10 Build 10049