プログラミング

プログラミングに関するフォーラムです。VBAは除きます。
  • 掲示板への投稿には会員登録(無料)が必要です。会員登録がまだの方はこちら
  • 掲示板ご利用上のお願い」に反するご記入はご遠慮ください。
  • Q&A掲示板の使い方はこちらをご覧ください
トピックに返信
質問

 
(Windows 8.1 Pro : 指定なし)
VBS ファイルサーバのフォルダの記述方法について
投稿日時: 20/11/12 16:21:03
投稿者: FANFAN

VBSのファイルパスについての質問です。
 
PCのローカルドライブにあるフォルダを同じPCの別なフォルダにBackup.zipの名前を付けて圧縮するスクリプトを作成しました。
 
 'ZIPに収録するファイルのあるディレクトリ名
 InputFolder = "D:\ms_Backup\20201112-PC5356HP"
 ' ZIPファイル名
 ZipFile = "D:\Test\Backup.zip"
 
 CreateObject("Scripting.FileSystemObject").CreateTextFile(ZipFile, True).Write "PK" & Chr(5) & Chr(6) & String(18, vbNullChar)
 Set objShell = CreateObject("Shell.Application")
 Set source = objShell.NameSpace(InputFolder).Items
 objShell.NameSpace(ZipFile).CopyHere(source)
 wScript.Sleep 2000
 
実行すると「D:\Test\Backup.zip」が正常に作成されファイルが存在しているのが確認できました。
 
InputFolderを社内のファイルサーバーの共有ドライブ Gドライブのフォルダ
 InputFolder = "G:\Projects\実績\ms_Backup\20201112-PC5356HP" に変更すると、ZipFileは作成されますが、中身は空となります
ちなみに、フォルダパスは \\FSV\Office\Projects\実績\ms_Backupde で、これを記述しても同様に中身が空のZipFileが作成されます。
 
ファイルサーバの場合の指定方法をご教示ください。
 
 
 

回答
投稿日時: 20/11/12 17:08:25
投稿者: Suzu

動作確認は行っておりませんが、
ZIPアーカイブファイルの作成先をローカルドライブ上とし
ZIPアーカイブ作成後に移動させる方法では如何でしょうか?
 
ローカルにてZIP作成でも空になる様であれば
圧縮元フォルダ自体をローカルにコピーしてから圧縮します。

トピックに返信