2

C++ で記述され、コンソール サブシステムでコンパイルされた Windows コンソール アプリケーションがありますが、コマンド ラインから起動すると、同じコンソール ウィンドウを再利用する代わりに、新しいウィンドウが開きます。

実行に管理者権限が必要なマニフェストが実行可能ファイルに含まれていることが原因のようです。

これは、HKLM からいくつかのキーを適切に読み取れるようにするために追加されました。

どうすればこの問題を解決できますか?

4

1 に答える 1

3

仮想化なしで HKLM から読み取れるようにするために、アプリケーション マニフェストでrequestedExecutionLevelofを指定する必要はありません。requireAdministrator

HKLM から読み取るために昇格する必要はありません。また、プロセスに指定されたアプリケーション マニフェストがある限り、プロセスはrequestedExecutionLevel仮想化されません。したがって、結論として、requestedExecutionLevelofを指定する必要がありますasInvoker

レジストリ仮想化の詳細については、MSDN ドキュメントを参照してください。

于 2013-11-04T15:56:00.580 に答える