プロが教える店舗&オフィスのセキュリティ対策術

ネットワークサーバーのファイルをローカルにコピーするスクリプトを作成しました。
スクリプトは正しく動作しています。
このスクリプトをスタートアップフォルダに入れて、PCを起動すると
「オブジェクトがコレクションではありません」
というエラーが時々起こります。
特定のPCで起こるとか、必ず起こるといった再現性がありません。
起動時にエラーが起きた場合でも、手動でスクリプトを実行すると正しく動作します。

原因として、スクリプト起動時にネットワーク接続が確立されていないのか、他のスタートアップツールがネットワークを利用するタイミングに衝突しているのではないかと考えています。

(1)他に考えられる原因があれば、教えてください。
(2)解決方法があれば、教えてください。

以上、よろしくお願いいたします。

A 回答 (1件)

たまに起こるとなると厄介ですね。


既に試されているかもしれませんが
Wscript.sleep 1000 * 10 '10秒待機
で単純に時間稼ぎをしてみるとか

Do Until ※※ = true
wscript.sleep 500
i = i + 1
if i = 3 exit do
Loop
※※の部分は
http://gallery.technet.microsoft.com/scriptcente …
のWMIで IP Address を 取得出来るまで待機して・・
などでできませんかね。
対症療法的な処理のような気がするので、どうかな?とも思えますが
思いついたのは、これぐらいです。

この回答への補足

ネットワークケーブルを外した状態でPCを起動すると、確実に
「オブジェクトがコレクションではありません」
のエラーが表示されますので、ネットワークが関係したトラブルで間違いなさそうです。
Do Loop の利用考えてみます。

補足日時:2011/01/26 10:25
    • good
    • 0
この回答へのお礼

早速の回答ありがとうございます。

お礼日時:2011/01/26 10:26

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!