I would like to know a way to unilaterally force a specific keyboard layout, not toggle between the installed ones.
This answer seems like the solution, but it does not work on my system (and not, I think, because the particular key sequence I mapped to Dvorak is getting captured by something else, as I've tried every Ctrl+key option—the ones available are grave accent, tilde, and the digit keys). I assign a key sequence to Dvorak, I hit "Apply" (or even "Apply", "OK", and exit the advanced settings panel), press the key sequence I referenced—and nothing happens at all, though a keyboard event viewer does see me pressing those keys. (Note that linked answer is older than Windows 10 Anniversary Update, which is what I'm using.)
Another way I definitely can do it is by deleting the keyboard map I'm not using and if necessary installing the one I want to use (or, equivalently, to force Dvorak by deleting Dvorak, reinstalling it, and toggling). However, this takes awhile and requires clicking an administrative permission button, which is problematic when I'm using a head-mounted display for VR games or development and cannot see the desktop.
I'm seeking a better solution (or, perhaps, a solution to making the control panel as described in the referenced answer work again).
To avoid the XY problem, some background: I prefer the Dvorak keyboard layout on a standard (QWERTY) hardware keyboard, but I have a few programs (such as some games) that insist on the QWERTY layout to work correctly, and a few other programs (mostly graphics-oriented) where the layout of commands is based on the QWERTY layout, and since I don't enter much text in them I'd like to have a way to switch the layout based on various events such as focusing/defocusing programs. Finally, I run some virtual machines which totally ignore the Windows layout but do use the Ctrl-Shift keyboard toggle combination for their own purposes (which is passed through to windows, so if I hit Ctrl-Shift an odd number of times in the virtual, I will end up changing the keyboard when I exit the virtual's window). I have any number of ways to cause keyboard and/or scripting events to happen at the right times, but they can't correctly deal with a toggle.
A way to force Dvorak and/or QWERTY would be very useful because then I can use these devices to change into and out of the keyboard I need at the right time. Assuming I have a way to call this on-demand as well, it would give me extra confidence to ensure I'm in the layout I think I am before pressing a key that will cause something bad if the wrong layout is actually selected.