Category Archives: Windows 10

Using Hyper-V Manager to remotely connect to a Windows Hyper-V Server 2016

Scenario: You want to use Hyper-V Manager from a domain-joined Windows 10 Professional client computer to connect to a Windows Hyper-V Server 2016 which is a Workgroup computer (i.e. not domain-joined).

I struggled for a couple of hours with this configuration, and read plenty of googled blog posts about how to do it. I wrote this post to document, the exact steps I finally followed to get this working as simply as possible.

(This post deals strictly with Windows Hyper-V Server 2016 and Windows 10 Professional,  so do not assume these same steps work on Hyper-V Server 2012 or any prior version of Windows client OS prior to Windows 10.)

Let’s start with the Server

I’ll assume you’ve installed Hyper-V Server 2016 (the free thing from Microsoft which can host Hyper-V virtual machines. This is a non-GUI install of the Windows Hyper-V Server OS, and while you can administer it from the terminal window on the server, most people will want to manage it remotely from a client machine using Hyper-V manager GUI tool from another client machine running Windows 10 Professional or perhaps a full Windows Server 2016 machine.

After installing, I left mine as a Workgroup computer because I did not want to join it to a domain, at least not just yet.

I’ll leave the basic setup from the blue sconfig.cmd screen up to you. I’m not going to walk you through all these baby steps in this post. The bottom line is that once you’ve enabled Remote Management and Remote Destkop, you can RDP from the client machine into the server (using the server IP address until you add fqdn in the your client hosts file later).

Your server “desktop” should look like this:


From Powershell window at Server:

1. Enable-PSRemoting

2. Enable-WSManCredSSP -Role server

Next, still in PowerShell command window:


3. Set-NetFirewallRule -DisplayGroup 'Windows Management Instrumentation (WMI)' -Enabled true -PassThru

4. Set-NetFirewallRule -DisplayGroup 'Remote Event Log Management' -Enabled true -PassThru

Finally, from the blue sconfig.cmd menu on the server:

5. Enable remote ping from clients to server:
From sconfig.cmd menu on Hyper-V Server 2016, select:
“4) Configure Remote Management” then
“3) Configure Server Reposonse to Ping” and select to enable this feature.

You should now be able to ping the server from any client machine on the next.  Go to command window on a client machine and test Ping (or whatever IP address you assign to your server.

Now setup the Client machine

(again, this assumes a Windows 10 Professional computer, domain joined)

In my case, ServerName was “HVS1”, IP address of server was

1. Edit the “hosts” file in C:\Windows\System32\Drivers\etc\hosts, add this line at the bottom: HVS1

The above two values represent the IP address of the server and  fqdn ServerName of your server. Modify values per your sever details.

2. Enable-PSRemoting  (From Powershell admin console)

3. Modify a Group Policy setting:

Run gpedit, then:

Computer Configuration >
Administrative Templates >
System >
Credentials Delegation >
Find:  “Allow delegating fresh credentials with NTLM-only server authentication”
Click Enabled, then, add an entry in the server list as follows (use the Show button to get a popup grid where you can enter this entry below):
add wsman/fqdn-of-hyper-v-host (i.e. wsman/HVS1) (Remember to enter “wsman/” before the computer name.)

4. Set-Item WSMan:\localhost\Client\TrustedHosts -Value "HVS1" (From Powershell admin console)  Click YES when you get a security warning explaining what setting changes you are making.

5. Enable-WSManCredSSP -Role client -DelegateComputer "HVS1" (From Powershell admin console) Click YES when you get a security warning explaining what setting changes you are making.

Now connect to remote Hyper-V Server from your client machine using Hyper-V Manager

Open Hyper-V Manager,
In the left pane, right-click Hyper-V Manager,
Click Connect to Server.
Select “Another Computer”
Enter HVS1 (i.e. the fqdn-of-hyper-v-host)
Check “Connect as another user” checkbox.
Enter username:  HVS1\Administrator  (Remember to put “ServerName\” before the username
Enter password: (the admin password on server)

Final step to moving a VM from a domain-connect Windows Server 2016 to a Workgroup-based Hyper-V Server 2016 machine.

So after getting all the above setup, I learned you cannot Live Migrate from a domain-connected Hyper-V to a Workgroup based Hyper-V Server.  So, I thought I take the next easiest route and simply copy the .vhdx file to the new Hyper-V Server I created… But then after building a new VM in Hyper-V Manager and attempting to attach the .vhdx disk image, it will fuss as you and tell you that the VM Machine you are working with does not have access rights to open the .vhdx file that you copied over.  After some googling, I found I was not the only one to ever have this problem, and several blogs posts outlined the fix… When creating the new VM, just tell it you will attach the .vhdx file later. This will get the VM created and Windows will give it a unique GUID Machine ID (you will need this GUID in the next step below). Next you go to an elevated command window (not Powershell) on the Hyper-V Server, and use the “icacls” command to grant permissions of the Hyper-V machine GUID to the .vhdx file. Follow this blog post:

To find the VM Machine ID, you can follow the simple instructions on this post: 

So, here is the command I ran to get my copied-over VM working like a charm on the new Hyper-V Server machine:

Using Computer Management on a client machine to remotely access the Hyper-V Server

You can run the Computer Management tool from a client machine to remotely access the Hyper-V Server with a graphical interface. If you want to use the Disk Management node in the Computer Management tool, you’ll need to enable some firewall rules on *both* the Hyper-V Server and the client machine. (Note: the “client machine” could be one of the Windows Server VMs you are probably running in Hyper-V Server).

Credit to this blog post for answering how to do this:

You can run these PowerShell scripts to enable the required firewall rules (remember, you have to do this on the client machine and the Hyper-V Server):


Good luck to you!

Helpful Windows Admin Tips

To launch Windows Update from the Windows Run dialog:


Use Powershell to kill processes with a name filter:

Get-Process | Where-Object {$_.Path -like "*SOME-FILTER*"} | Stop-Process

See what time computer was booted up:

net statistics server

Restart or Shut Down a Remote Computer and Document the Reason

shutdown /i


Using DISKPART from the command line to work on disk drives, volumes, partitions:

Activating Windows 10:

Changing Windows Product Key After Install:

Windows Search error: “Search results aren’t quite ready yet, but we’re working on getting them together. Try back in a few minutes.”

Read original Windows 10 License Key using Power Shell:

Then, read Windows Key from “OA3xOriginalProductKey” property from output above.


See also:

PowerShell: Get a list from the registry of all the software installed on your machine

PowerShell: List open files on a server/computer

Example with filename filter:

Example with domain\username filter:


Configure Windows Defender using PowerShell


I found these 2 links very helpful and informative which explain how to use PowerShell commands to observe the current setting of Windows Defender and make configuration changes such as disabling and enabling, and how to add exclusions on certain apps.



and this one, which has a short but helpful video:

Add Windows Defender exclusion for iBackup exe

In my case, I wanted to add an exclusion for the iBackup exe which runs nightly to do a local disk backup to another drive on the same machine, and Windows Defender was watching every file write operation in real time, and this made the backup take a very long time. So, I added an exclusion for the iBackup processes exe using this command, and it sped up the backup tremendously:


Manually update Windows Defender to fix update failures KB2267602 (Definition 1.213.6196.0) – Error 0x80070643

On a few of my Windows 10 computers, Windows Defender was failing to update properly through Windows Update.  I found that you can manually update Windows Defender using this command from a terminal window:

I found this instruction in the comments of this post:

Does Microsoft Visual FoxPro 9 run on Windows 10?

I’m sure many die-hard FoxPro developers are curious if Visual FoxPro 9.0 SP 2 will install and run on Windows 10. Well, I wanted to be one of the first to find out, just like I did back when Windows 8 was first released in its early preview.

So, let’s find out…

First, I installed Windows 10 Preview (64 bit) in a BootCamp partition on my 15” MacBook Pro. (Don’t worry about this Mac stuff, it’s still just Windows running on live hardware, just like if it were a Dell or HP computer).  That went very smoothly, and I did a full install, blowing away the Windows 8 playground I had been using  that partition, instead of updating it from Windows 8 to Windows 10.

Next, I gently inserted the Visual FoxPro 9 CD that I still have from circa 2004. First, it prompted me to install some “Prerequisites”, which it did with no problems. Next I moved on to the main VFP install, and I took all the defaults, then the CD spun around for a bit, and finally, it gave me a nice message screen stating “Setup is complete” and “There were no errors during setup.”  Looking good so far!!


Next, I downloaded and installed Service Pack 2 for VFP 9, and once again, got this nice little affirming message box:


Finally, I “installed” the VFP 9 Hotfix 3 for SP2 (i.e. copied the replacement files to the correct places per the instructions in the readme file in the zip download).

We now have a promising Microsoft Visual FoxPro 9.0 entry in the fancy new Windows 10 Start menu:



Yes, but does it actually run??

Now, I finally get to find out if we can run the fully patched Microsoft Visual FoxPro 9.0 SP2 Version 09.00.0000.7423 on Windows 10. So, I launch it from the Start menu, and quickly go the Help –> About screen:


One small issue with Task Pane…

If you launch VFP 9 it will initially show the the Task Pane, but you will get a small error in the view area of the Task Pane window. (Don’t worry, I’ll show you how to fix this below.)

Class definition MSXML2.DOMDOCUMENT.4.0 is not found.


The issue is that Task Pane requires MSXML 4.0 Core Services. If it’s not already installed on your Windows 10 machine, you will get this error reported in the Task Pane app from the VFP IDE.

However, this problem is easily fixed… You need to download the MSXML 4.0 Core package from:

Once, installed, now Task Pane will work properly:


Now, let’s run some code…

Okay, it says the right version number all, but we need  run some FoxPro code to make sure this thing actually works…  So, I just downloaded the Thor Tool Manager for FoxPro from, and ran to put VFP 9 on Windows 10 to its first test. Thor uses tons of well-architected FoxPro code to do it’s magic, along with some UI forms, and it makes use of our beloved FoxPro cursors, so I figured this would be a good test.  I selected about 10 of my favorite VFPx tools from the Check For Updates form in Thor, and it nicely proceeded to download and install all the tools, and gave this confirming output for each one on the VFP desktop as it did its work:


I think we’re good folks!

Next, I ran a few of these tools, just to make sure they’d fire off, and they did. I’m pretty certain at this point, that my business apps would work just fine here, if I took the time to finish out this developer setup.

So, I haven’t done any real coding work in the IDE, and I probably won’t any time soon, but from my basic tests in this experiment, it sure appears to me that our old friend Visual FoxPro is ready to continue its legacy of being an awesome development tool, even on Windows 10, and hopefully on Windows 20 and Windows 30 as well.

Finally, here’s a  peak at the whole IDE running in Windows 10. You can see I docked some windows, and you can see the shading effect that Windows 10 adds around the individual windows.