0

プログラムからスクリーン キーボード (osk.exe) で Windows 7 をプログラムで開こうとしています。このページでこれに関する適切なガイドを見つけましたが、UAC がオフの場合は非常にうまく機能します。

ただし、UAC をオンにすると、プログラムがまったく開かれず、その理由がわかりません。スタート メニューからキーボードを開いたときに UAC プロンプトが表示されないため、管理者権限は必要ないようです。

実行可能ファイルが Windows システム フォルダにあるという理由だけでしょうか。そうであれば、動作するプログラムを起動する別の方法はありますか?

返されるエラーは 3、ERROR_PATH_NOT_FOUND です。おそらく、'sysnative' パスが UAC が有効な状態で機能していないためです。

パスなしで「osk.exe」を実行しようとしても失敗し、「スクリーン キーボードを起動できませんでした」というエラーが表示される

最後に、リダイレクトをオフにして使用しようとすると、「C:\Windows\system32\osk.exe」の実行がエラー コード 5: SE_ERR_ACCESSDENIED で失敗します (この質問で提案されているように) 。

4

1 に答える 1

0

メッセージで参照されている C++ コード サンプルをテストしました。このルーチンは、VS devenv から開始されるか、スタンドアロンの exe として開始され、使用可能な UAC モードでオンスクリーン キーボードが常に表示されます。私のOS: Windows 7 Ult. SP1 64 ビット。

于 2013-12-10T18:16:13.547 に答える