dポイントプレゼントキャンペーン実施中!

VBScriptで別ドライブにフォルダを移動できません
VBScriptで別ドライブにあるフォルダを移動したいのですが、以下のエラーで異常終了してしまいます。

Microsoft VBScript 実行時エラー: 書き込みできません。

移動はファイルシステム関連オブジェクトのMoveFolderメソッドを使用しています。
VBScriptで別ドライブにフォルダを移動する方法をご存知でしたらご教示頂けませんでしょうか。
よろしくお願いいたします。

A 回答 (2件)

とりあえず問題が再現する最低限のコードを提示してみてはどうでしょうか。


それと、補足要求
■ スクリプトはどこで実行しているのですか?
■ どこの管理者権限で実行しているのですか?
■ 移動元と移動先のドライブは、どちらもスクリプトを実行している PC のローカルですか? ネットワーク ドライブが混じっていたりしませんか?

たとえば、ユーザーの PC の管理者権限で、ユーザーの PC でスクリプトを実行したとします。
移動先のドライブがファイルサーバーの共有フォルダーをマウントしたネットワーク ドライブだった場合、ファイルサーバーからするとユーザーの PC のローカル Administrator なんて知らない奴に書き込まれたくありません。
ファイルサーバーが知っているユーザー (ファイルサーバーと同じ Active Directory ドメインのドメイン ユーザー アカウントとか) なら権限さえ付いていれば書き込み可能です。

この回答への補足

問題が解決してはいないのですが、別の方法が見つかりました。
今回FileSysytemObjectのMoveメソッドを使用したのですが、ShellオブジェクトのMoveHereメソッドを使用すると問題なく移動できることが分かりました。
双方のメソッドにどのような仕様上の違いがあるか、調べてみます。
この質問はクローズします。有難うございました。

補足日時:2010/03/13 22:59
    • good
    • 0
この回答へのお礼

※進展はしておりませんが、「お礼」の方に記載いたします。
アドバイス頂き有難うございました。提示する情報が足らず失礼いたしました。
移動元、移動先ドライブはどちらも同一ホスト上にあります。一つのディスクをパーティションで論理的に別ドライブにしています。ネットワーク上のドライブをマウントするといった形ではありません。完全にスタンドアロン状態でテストしています。
よってネットワークを介したホスト間の権限の問題ではありません。
しかしネットをさらって見た所、やはり権限上の問題でしかこのエラーは出ないようです。
ソースの一部を後述いたします(といっても特別なことをしておりませんが)。

まとめますと、
・同一ホスト上の異なるドライブ間でVBScriptによってフォルダの移動ができない。
・実行すると、「Microsoft VBScript 実行時エラー: 書き込みできません。」というメッセージが出て異常終了する。
・同じスクリプトで同一ドライブ間では問題なくフォルダの移動ができる。
・スクリプトの実行はホストの管理者権限で行っている。
・ホストはスタンドアロン状態でテストしている。

以下スクリプトの実行ステートメント部分です。
--------------------------------------------------
Dim objFSO
Set objFSO = CreateObject("Scripting.FileSystemObject")

objFSO.MoveFolder "C:\test","D:\test"
---------------------------------------------------

お礼日時:2010/03/13 13:19

まずはスクリプトからではなく、実際に操作して移動できるかどうかを確認してください。



もし移動できないのであれば、

1.コピー元のフォルダおよびコピー先のドライブ双方にアクセス可能なアクセス権が設定されていること

2.移動元のフォルダで、他のプロセス又は自プロセスからアクセス中のファイルがないかを確認すること

上記の2点を確認してみてください。
    • good
    • 0
この回答へのお礼

回答いただき有難うございます。
GUIでは問題なく当該ファイルを移動できます。1については、アクセス権についても特別な設定はされておりません。また、VBScriptは管理者権限で実行しております。2についてはテスト用に新規フォルダを作ってそれをVBScriptによって別ドライブに移動させようとしましたが、それも同様のエラーでできませんでした。
同じドライブ間ならば問題なく移動できるため、ドライブをまたがる移動に何らかの制約があるのかと思い質問させて頂いた次第です。
ちなみにOSはXP、WSHバージョンは5.7です。

お礼日時:2010/03/12 14:37

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

このQ&Aを見た人はこんなQ&Aも見ています