Set Windows Update to use http proxy

By default, Windows Update will access to microsoft update server or your WSUS server directly, no matter you set a http proxy in IE option window or not. If your computer cannot access the internet directly, that may cause a problem.

To resolve that, you need to:

  1. Set a http proxy in IE option window;
  2. Open cmd window by administrator permission;
  3. Enter this command and press enter:
    netsh winhttp import proxy source=ie

To disable the proxy setting of Windows Update, do the similars above, just changing the step 1 to disable that http proxy.

Remove A records of Domain Controller from DNS

Because it’s possible to access the DNS through all IP addresses of domain controller, you will see lots of A records pointed to each IP address of domain controller. That may cause some problem for client while determining the IP address of domain controller.

To resolve this, you have 2 choices:

1 Remove DNS service on some IP address. This will avoid the specified IP address is listed as an A record because it’s not possible to access the DNS through this IP any more.

But if you have to enable DNS on that IP, a public IP address for example, you may want to choose the 2nd way.

2 Create a REG_SZ key named PublishAddresses in HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNS\Parameters, and set value to all IP addresses that you want to listed in DNS. If you need to declare multiple IP addresses, please separate them by space. Reboot when done.

Only all specified IP addresses will be displayed as A records in this way.

This function does NOT affect the failover cluster. All IP addresses belongs to cluster will still remain existed.



Time Sync between OSX and Windows

Through Boot Camp, we can install a dedicated Windows instance with OSX in the same mac computer. Due to the different time models, you may see that the time is not right while booting into another system.


  • OSX, as well as other unix-like system, setting UTC to hardware time, convert to local time dynamically while displaying;
  • Windows use LOCAL TIME as hardware time directly.

You may not realized this because one of these reasons below:

  • You are in England, or other countries in Time Zone 0 (GMT);
  • Your computer system, both OSX and Windows has a client of NTP, which will get the right time from internet server very soon after booting. Certainly, the related computer should have an active internet connection.

How to fix it:

I didn’t find a way to change the time model of OSX. But we can do that in Windows.

  1. Start Regedit;
  2. Nav to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation;
  3. Create a new DWORD named as RealTimeIsUniversal, and set it value to 1.

Install dotNet framework 3.5 on Win8 / WinSvr2012

We know that from Windows Vista, the original optical media is useless after you finish system installation. Enabling a role of feature do not require that media any more.

But in Windows 8 / Windows Server 2012, for some reason we don’t know, the situation is changed a little. The setup package of dotNet framework 3.5 is not pre-copied to your hard drive. It will have to be downloaded from Microsoft while enabling that feature.

If you hate this, luckily, that setup package is on installation media also. We just need to tell the system to use that instead of downloading.

You may want to run this as administrator:

DISM /Online /Enable-Feature /FeatureName:NetFx3 /All /LimitAccess /Source:d:\sources\sxs


  • /Online targets the operating system you’re running (instead of an offline Windows image).
  • /Enable-Feature /FeatureName:NetFx3 specifies that you want to enable the .NET Framework 3.5.
  • /All enables all parent features of the .NET Framework 3.5.
  • /LimitAccess prevents DISM from contacting Windows Update.
  • /Source specifies the location of the files needed to restore the feature (in this example, the D:\sources\sxs directory).


Install language pack ( on Win8 / WinSvr2012

Windows 8 / Windows Server 2012 have changed a lot of UI. The old way for installing a dedicated language pack ( does not work any more.

To do the same thing as before, you may love this: \Windows\system32\lpksetup.exe


Volume Shadow Copy Service error on Windows Server 2012

In many instance of Window Server 2012, there are lots of errors in Event Log about Volume Shadow Copy Service like this:
Volume Shadow Copy Service error: Error creating the Shadow Copy Provider COM class with CLSID {463948d2-035d-4d1d-9bfc-473fece07dab} [0x80070005, Access is denied.].
Creating instance of hardware provider
Obtain a callable interface for this provider
List interfaces for all providers supporting this context
Query Shadow Copies
Provider ID: {3f900f90-00e9-440e-873a-96ca5eb079e5}
Provider ID: {3f900f90-00e9-440e-873a-96ca5eb079e5}
Class ID: {463948d2-035d-4d1d-9bfc-473fece07dab}
Snapshot Context: -1
Snapshot Context: -1
Execution Context: Coordinator

Actually, that may be a bug of Windows Server 2012. You need to and are able to correct it manually by setting up the right credential for related DCOM. You can choose UI or PS to reach that:
UI mode:
1 Open Component Services, open Computers – My Computer – DCOM Config.
2 Locate WTVdsProv and press right mouse key – Properties – Identity, select This user, enter an account name and password with local administrator’s permission.
3 Do the same step for WTSnapshotProvider.
PS mode:
Open PowerShell and use these commands:
$PsCred = Get-Credential
$PrvdIdentityPath = New-Object System.Management.ManagementPath(“root\wmi:WT_iSCSIStorageProviderIdentity”)
$PrvdIdentityClass = New-Object System.Management.ManagementClass($PrvdIdentityPath)


How to migrate WSUS Database from WID to SqlServer on Windows Server 2012

I was trapped in migrating WSUS database from Windows Internal Database to a dedicated SqlServer instance. Due to lots of changes taken in in WSUS and WID of Windows Server 2012, the old way as Windows Server 2008R2 does not work anymore. Finally, I found a solution to do that.
All your needs:
1 A working instance of WSUS, which has a database in WID.
2 SqlServer installation package.
3 Backup before migration.

Migration steps:
1 Install a SqlServer instance. For my case, SqlServer 2012 Express x64 is chosen.
2 Install a SqlServer Management Studio.
3 Log on to this server by LOCAL ADMINISTRATOR. If your server joined a domain, you have to do this by local administrator. No matter your domain account is in local administrators group or not, you cannot do that with a domain account.
4 Open SqlServer Management Studio and connect to server \.\pipe\MICROSOFT##WID\tsql\query using Windows Authentication. You will find a database named SUSDB listed.
5 Stop service WSUS Service and IIS Admin Service.
6 Detach SUSDB. Drop active connections if needed.
7 Log off and log on to this server with your account if you like. You may need an account from local administrators group.
8 Copy database files out from C:\Windows\WID\Data. You need 2 files related to SUSDB.
9 Remove Role Windows Server Update Services and Feature Windows Internal Database. Server will have to reboot after this step.
10 Install removed role and feature again. Choose database instead of WID database. When asked to specify a path for storing updates, use the same file location as before.
11 Finish post deployment but do not open MMC.
12 Open SqlServer Management Studio and connect to the SqlServer instance installed by step 1. You need to run this instance by administrator privilege, or you will get a read-only database in next steps.
13 Stop service WSUS Service and IIS Admin Service.
14 Delete SUSDB database from SqlServer Management Studio.
15 Attach SUSDB from the location where you copied to in step 8.
16 Start service WSUS Service and IIS Admin Service.
17 End.

PS: SqlServer database is not like one in WID, it cannot be backed up by Windows Server Backup. Please choose a separated folder or volume for your database files and setup an agent job to backup them.