1

我有一个为 x86 编译的 WPF 4.0 应用程序。在 64 位 Win7 上运行时,我需要启动一个屏幕键盘,位于 %windows%/System32/osk.exe。问题是我做不到 - 我收到错误消息“无法启动屏幕键盘”。

我发现了这个线程: Unable to launch onscreen keyboard (osk.exe) from a 32-bit process on Win7 x64这听起来和我的问题一模一样。

我使用了该帖子中的所有相关位,但错误仍然存​​在。更糟糕的是,我设法获得了 32 位版本的 osk.exe,当我尝试启动它时,我只得到一个空白的错误框——根本没有任何消息,只有一个红色的“X”。

所以我无法为 AnyCPU(第 3 方互操作库)编译我的应用程序,并且已经阅读了这可能无法解决问题。我还读到一种解决方法是使用 Wow64DisableWow64FsRedirection 禁用虚拟化,但这是不安全的。运行一个小应用程序似乎需要付出很多努力:(

我该怎么做才能从我的应用程序启动这个小东西?

4

1 回答 1

0

将有问题的应用程序包装在使用 AnyCPU 编译的 exe 中可以正常工作,并且似乎是最不痛苦的方法。

于 2011-03-22T16:01:20.040 回答