Ever have to log into a the console of an ESX VM… over a slow connection? Then you’ll know all about the character repeat that comes along with that. If you haven’t experienced this… consider yourself lucky. It is especially interesting when trying to type passwords.
So how do you defeat this?
You set the “keyboard.typematciMinDelay” value in the VMX file to a Really Really big value.
“But I have hundreds of VMs!!” I hear you cry. Well… put the razor down, turn off the Linkin Park, and open up your PowerCLI window:
There it is, Set-Keydelay.ps1
So what does Set-Keydelay.ps1 do? Reading through it, we first setup the VMX values we want to set ($key & $value). From there we check to ensure we were passed a VM object on the pipeline, and perform our magic. Please keep in mind, that while you can apply this setting live, it may not take effect until the VM has been restarted.
This should hold you until the keydelay parameter is made a default option. Questions? Comments? Please let us know in the comments.
If I wanted to run this against all of my VMs, what is the specific syntax that would need to be appended after
Connect-VIServer -server
get-vm | set-keydelay.ps1