ActiveDirectoryのグループポリシーでスタートアップスクリプトでバッチからコマンドラインアプリケーションを走らし、結果をファイルサーバにリダイレクトで吐き出すという処理を考えてました。
バッチから呼ぶコマンドラインアプリケーションもファイルサーバ上にあります。
で、当初スタートアップスクリプトで指定したバッチに下記のように書いていました。
\\10.0.0.20\share\xxxx.exe > "\\10.0.0.20\share\%computername%.txt"
(ファイルサーバ上のexeを叩き、同じファイルサーバにクライアント)
しかし、バッチで指定したexeがどうも動いてないようなのです。当然結果のテキストファイルも落ちていません。
いろいろ悩んだ挙句ファイルサーバをIPアドレスではなくホスト名にしたらうまく動くようになりました。
こんな感じです。
\\server01\share\xxxx.exe > "\\server01\share\%computername%.txt"
どうやらスタートアップスクリプト内でUNCパスを使うときは、IPアドレス指定はダメなようですね。
後、余談ですが、スタートアップスクリプトはコンピュータのローカルシステムアカウント権限で動くので、スタートアップスクリプトからアクセスされる共有フォルダやNTFSのアクセス権は "Domain Computers" グループが読み取りや書き込みができるようになっていないといけません。
参考: