Windows 8のスタート画面の上にウィンドウを表示したいプログラムがあります。これを行う唯一の方法(私が知っている)では、マニフェストにフラグuiaccess=trueを設定する必要があります。ただし、それが機能するためには、プログラムのユーザーが管理者である必要があります。そこで、この方法を試して、プログラムと一緒にインストールしたサービスを取得して、メインプログラムを起動しました。このようにして、インストールされたユーザーは誰でもプログラムを実行できます。
問題はuiaccessフラグです。記事で説明されているようにプログラムを起動するには、uiaccessを使用する場合、サービス自体でuiaccessフラグを有効にする必要があるようです(そうでない場合、CreateProcessAsUserは失敗します)。また、uiaccessフラグを使用してサービスをインストールしようとすると、「このプロセスには昇格が必要です」というエラーが表示されます。
したがって、主な質問は次のとおりです。このフラグが有効になっているサービスをインストールする方法はありますか?私は答えが「いいえ」であることを期待していることを認めます。セッション0で実行されているサービスは、UIコンポーネントが許可されていないため、通常、このフラグを設定する理由はありません。しかし、私は自分が間違っていて、方法があることを望んでいます。
ありがとう、私が何かを片付ける必要があるかどうか私に知らせてください。