2009-02-17 75 views
1

我遇到问题,我有一个应用程序,它具有用于启动系统屏幕键盘的工具栏图标。除了Windows Vista和Windows 7 beta之外,这一切都可以正常工作。 UAC似乎妨碍了osk.exe的运行。如何从Vista和Windows 7上的应用程序启动屏幕键盘

我读过,因为它在登录屏幕上使用,它不会提示用户进行身份验证。如果我关闭UAC,它可以正常工作,但这不是一种选择,因为客户希望它可以用完。

我能做些什么来解决这个问题吗?

+0

你是什么意思它用于登录屏幕?您的应用程序在登录之前运行? – jgallant 2009-02-17 14:15:20

+0

我想说的是,osk在与UAC的交互中是独一无二的,因此我无法从我的应用程序(这是一个标准的桌面应用程序)启动它。 – 2009-02-18 10:28:24

回答

2

好吧,它更多的是关于它的结果。

我正在使用Qt的QProcess :: startDetached,我相信它在Windows上使用CreateProcess函数调用。

我改变了使用ShellExecute()函数调用的代码,它的工作方式就像一个魅力。

奇怪...

0

是不是有可能尝试实现您自己的OSK,因此它与您的应用程序具有相同的权限?

+4

我真的不想重新发明轮子,加上本地化的键盘是一个需求,20个布局将是一个皇家的痛苦。 – 2009-02-18 10:30:10

相关问题