Windows UAC、スケジュールされたタスク、および「dbupdate.exe」という名前の実行可能ファイルに問題があります。私はソース コードやマニフェストなどに対しては完全な権限を持っていますが、ユーザー システムに対しては権限がありません (略して、通常のソフトウェア エンジニア ;-)。言語は Delphi ですが、重要ではないと思います。
Windows Vista および Windows 7 のタスク スケジューラでアプリケーションを使用すると問題が発生します。プログラムの名前は dbUpdate.exe です。xp/vista マニフェストが組み込まれており、プログラムを "asInvoker" で開始するように構成します。
現在、Vista と Windows 7 では問題なくプログラムを起動できますが、システムにログインする必要があります。ログインしていない場合、プログラムは実行されません (Windows タスク スケジューラを使用していますが、他のスケジューリング プログラムにも問題があることはわかっています)。しかし:プログラムの名前を「dbBlaBla.exe」に変更すると、実行されます。UACインストーラー検出は、私のプログラムがインストーラーであると考えているという点に私を導きます(そうではありませんが、更新、セットアップなどのファイル名を調べていることは知っています)。
ウェブを検索しましたが、役立つ情報はあまり見つかりませんでした。そこでここで質問します
スケジュールされたジョブでマニフェストを実行できるようにするには、特別なマニフェストを作成する必要がありますか? または、スケジュールされたジョブまたは実行可能ファイルに対してのみ UAC を無効にする方法はありますか? それとも、本当に別の名前を選択する必要がありますか (前に述べたように、それはうまくいきます)、衣装担当者と私の同僚がこれについてあまり満足していないというリスクを冒す必要がありますか?$
助けてくれてありがとう、挨拶