I am looking for a means to programmatically disable and re-enable the Windows 8 charms bar and other gesture related items (App Switcher, Drag-To-Close, etc.). This functionality will be added to a kiosk program I have written in Visual Basic.Net (using the .Net 2.0 Framework).
To save you time, I can tell you not to bother with the DisableTLcorner and DisableCharmsHint registry entries...
My.Computer.Registry.SetValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ImmersiveShell\EdgeUI", "DisableTLcorner", 1)
My.Computer.Registry.SetValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ImmersiveShell\EdgeUI", "DisableCharmsHint", 1)
They do not completely disable the items. Simply sliding the mouse pointer down the right edge of the monitor causes the charm bar to reappear.
I believe the solution can be achieved by implementing some Windows API calls. In particular, I have found System.EdgeGesture.DisableTouchWhenFullscreen, which sounds like a perfect fit.
If the aforementioned Windows API method works, we won't need the re-enabling part. If you plan on using a different method, it may be necessary to have the "re-enabling" part written as well (so charms can be restored when the kiosk program has been terminated).
To aid you in Windows API method, I suggest looking at the WindowsAPICodePack for p/invoking information...