0

プログラムで何かが起こったときにcmd.exeで実行する必要のあるコマンドがあります。コマンドが「calc.exe」であるとしましょう。ShellExecuteを使用する場合:

HWND win = GetActiveWindow();
ShellExecute(win,L"open",L"calc.exe",L"",L"", SW_SHOWNORMAL );

calc.exeプロセスはセッション0で開始されるため、表示されません。アクティブユーザーウィンドウで起動するように設定する方法はありますか?特権の問題が発生しているため、CreateProcessを使用したくありません

ありがとう

4

1 に答える 1

0

いいえShellExecute、別のセッションでプログラムを実行することはできません。を使用する必要がありますCreateProcessAsUser。ここには、これを行う方法について議論する多くの質問があります。

于 2012-12-05T11:40:45.940 に答える