Override UAC and Secure Desktop RRS feed

  • Question

  • Hi,

    First, remember that this is a developers forum, not a personal support forum. Just like you, I'm a good developer and I know what I'm doing and why am I doing it. This means that I'm willing to discuss the "how", but not the "why".

    I have a service running as SYSTEM on Vista, which has a secondary process running as the user which is logged onto the console. I want to programatically move the mouse and send keystrokes to the desktop, as well as capture screenshots. Whenever I do an action that requires elevation, the UAC dialog pops up and my mouse/keyboard/display functions start to fail, as expected. I need to override this and be able to programatically send keystrokes, mouse moves and take screenshots even while on the Secure Desktop. As I mentioned before, I have a process running as SYSTEM, so I have all the permissions I want if I need them.

    Wait! before you tell me "you can't", think again. Remote desktop basically does this. I know that this is different because Remote Desktop works on a different session, and this works different, but it's basically the same because the remote desktop server can elevate any process at will, without entering into secure desktop, as remote terminal sessions have no physical keyboard/mouse/display to secure.

    I'm pretty sure all those remote control service desk applications, or even VNC have choices on this.

    If, after all this, you still want to ask me "why", suppose I'm writing a VNC-like tool.

    Think about it,

    Tuesday, May 29, 2007 9:21 PM