VM Additions not detected?

From time to time, I run into this issue with our Hyper-V environment. No matter how many times I upgrade the VM additions, SCVMM still is not able to detect it. It always ends up saying “not detected”.

VM additions problem

Eventually I noticed that one of the the 6 Hyper-V related services which are usually running on the VM was having some trouble – the heartbeat service. Hmmm…that makes sense!

HV services

If I tried to start this service, I got the following error:

Error 1083: The executable program that this service is configured to run in does not implement the service.


VM additions1

While doing some searching on the net, I found out the solution here !!THANK YOU!!

As mentioned by that guy, the two things I need to know are shown below:

VM additions2

So I open the registry and add vmicheartbeat to the bottom of this Multi-String entry, like this:

VM additions3

After I click OK and restart the VM, the heartbeat service starts without any problem (automatically). Just do a refresh in VMM and now I see the VM additions version number. Yeah baby!

Thanks a lot to Jeremy!

What is Driver Locked memory?

I noticed that one of my VMs (on Hyper-V 2012) was using a lot of RAM. Strangely, there was no application which was using that much RAM. It was using 14.2/16 GB RAM. At that time task manager showed this:


And this in the details tab:


Notice that Oracle was using only 1.8GB and that was the highest user. Even if I total everything, it still was nowhere near 14 GB used. What was using all that RAM?

Continue reading “What is Driver Locked memory?”

Easy, free VBScript debugging

As sys-admins we have to write scripts. Although the new thing is PowerShell, we still have a lot of old legacy scripts in VBScript.

I was searching for an easy way to debug a VBScript, the way software developers do it using an IDE… but I do not want to install the whole Visual Studio package. Sure there are non Microsoft tools to do it, but I could not find a good, free one.

After a lot of trials and tribulations, I found the easy way to debug a VBScript:

  1. Install MS debugger. (download it from here). Yes it is super old, but still works, I tested it on Windows 8.1
  2. On a command prompt, start debugging by invoking debugging like this:

c:\windows\syswow64\cscript.exe (script_path_and_name) //X


Note that a simple “cscript.exe (script_path_and_name) //X” does not work (for me at least). I need to invoke the 64bit cscript.

Changing your own password on a RDP session on Windows Server 2012 R2

Some people recommend using ….control + alt + end on a RDP session to bring up that Windows Security screen, but it does NOT work on nested RDP sessions.

This procedure is the only one which worked for me on a Windows 2012 R2 RDP session:

  1. Click Start
  2. Type osk (to bring up the on screen keyboard)
  3. Hit enter
  4. Once the on screen keyboard is open, hold ctrl+Alt on your physical keyboard, then click on the del key in the on screen keyboard.
  5. Minimize the on screen Keyboard
  6. Click Change a password.


PS: Thanks a ton for the tip, Bill!

DPM Protection Groups, how many?

OK so I am trying to figure out what is the best way to create PGs in DPM 2012. From what the research I have done so far, one should create PGs depending upon the protection level and time.

So, for example of you have a 5 file servers whose data should be retained for 3 months and 10 database servers whose data should be also be retained for 3 months, you should create just one single PG.

Sure, you can also create two PGs, call one “file server PG” and the other “Databases PG” but I do not see any technical advantage of doing so.

So going forward, for example, if you have a bunch of dev servers who you wanna keep a backup of for only one month, sure go ahead and create a separate PG for them.

At one point I used to think that be creating 10 PGs, DPM will run 10 jobs simultaneously…. but that is not true. I have since found out that DPM has a limit of concurrent jobs  which is set to 3 by default. It is a registry setting which one can change.


I found this and some other, very good information here:


By the way, I created a technet thread here about this topic.