インストーラの一環として、ANTからバッチファイルを実行する必要があります。 cmd.exeを管理者として実行し、バッチファイルを実行すると、適切な管理者権限を持つので、すべてがうまくいきます。バッチファイルがantから実行されると、管理特権なしでバッチファイルを実行するのと同じ方法で失敗します。私の質問は、どのようにANTスクリプトから管理モードでこのバッチファイルを実行できますか?Windows Vistaの管理者としてANTタスクを実行する方法はありますか?
runas /u:%COMPUTERNAME%\Administrator "cmd /c service.bat install"
呼び出された場合は、コンソールパスワードの入力を要求されます:
<exec executable="cmd.exe" output="dir.txt" dir="c:/bin/">
<arg line="/c service.bat install"/>
</exec>
おっとあり、質問はビスタについてでした。私の答えはXPだけに基づいている、私はそれがVistaに適用されるかわからない。 –
Vistaでそれを試しました。うまくいきませんでした...提案に感謝します。他のアイデアは誰ですか? – Edward
@Edward SysinternalsコマンドラインツールPsExecを試してください。 https://technet.microsoft.com/en-us/sysinternals/bb897553.aspx – Jesse