現在、Windows 7で起動スクリプトをbatファイルの形式で実行しています(値としてbatファイルのパスを持つ新しいレジストリキーエントリを挿入しました)。
Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run)
。
今度は起動時に別のbatファイルを実行する必要がありますが、昇格した権限(管理者として)を使用し、手動でプロンプトを確認する必要はありません。
どうすればこれを達成できますか?できれば外部プログラムなしで。
この記事を参照してください。 タスクスケジューラを使用して、起動時にVistaにUAC制限付きプログラムを起動させる 。
この記事では、タスクスケジューラを使用して、昇格した特権でスタートアッププログラムを起動する方法を説明します。あなたのケースではいくつかの小さな変更が必要かもしれませんが、記事はスクリーンショットでよく書かれています。
あなたは違うアプローチを考えましたか?同等のレジストリ設定に対する純粋なグループポリシー、またはグループファイルとして実行するようにバッチファイルを設定する。ユーザースクリプトではなく、コンピュータースクリプトとして実行することもできます。
Gpedit.mscから始めます。しかし、それはUltimateまたは他のトップエンドエディションの1つを必要としません。
2つのバッチファイルを作ります。
StartAs.batの行に沿って何かが含まれています。
runas /user:SomeLocalAdminAccount c:\Users\MyUser\StartupWhat.bat
StartWhat.batには、実行したいコマンドが含まれています。
リソースキットのAutoExntユーティリティ。
AutoExNTサービスを使用すると、管理者は、コンピュータの初回起動時にWindowsベースのコンピュータがカスタムバッチファイルを実行するように設定できます。また、このカスタムバッチファイルの実行時にユーザーまたは管理者がログオンする必要はありません。
hstart.exe - http://www.ntwind.com/software/hstart.html のサードパーティ製start.exeの置き換え
呼び出しは少し苦痛ですが、それは本当にうまくいきます。
runas/user:SomeLocalAdminAccount
これは次のようになります。
runas /noprofile /user:mymachine\administrator cmd
runas /profile /env /user:mydomain\admin "mmc %windir%\system32\dsa.msc
runas /env /user:[email protected] "notepad \"my file.txt\""
たぶん UACPass (無料)はそれを解決するでしょう:
完了しました。このプログラムは、UACプロンプトなしでadminとして実行されるはずです。
プログラムにはadd to startup
:-Dのオプションもあります。
あなたのプログラムはログオン後にしか実行されません(またはそう私は思う)。