HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2013
0309
名無しZIP32J.DLLでのディレクト圧縮について。6解決


名無し

リンク

2013/3/9(Sat) 20:28:28|NO.52824

ZIP32Jを使ってディレクトリの圧縮をしようとしているのですが

#uselib "ZIP32J.DLL" #cfunc Zip "Zip" sptr, sptr, var, sptr sdim zipdata, 20000 zipstat=Zip( hwnd, "-r file.zip G:\\Desktop\\file", zipdata, 1024*1024 ) if zipstat != 0 : dialog "Error":end
このソースだと、圧縮した際に
Desktopというディレクトリの中にfileというディレクトリがあるという形になってしまいます。

作業ディレクトリを指定する -bかとおもいきやそうでもありませんでした。

どうすれば、この現象を回避できるでしょうか?



この記事に返信する


KA

リンク

2013/3/9(Sat) 20:56:23|NO.52827

●コマンドラインの形式

  [-<options>...] <archive_file_name>[.zip] [<directory_name>\] [<filespec>...]

●オプション

 -b dir
    作業ディレクトリを指定する。



KA

リンク

2013/3/9(Sat) 21:01:38|NO.52828

>>この現象を回避できるでしょうか?

「この現象」が、どうなれば「回避」に成りますか。



名無し

リンク

2013/3/9(Sat) 21:03:58|NO.52829

>>KAさん

uselib "ZIP32J.DLL" #cfunc Zip "Zip" sptr, sptr, var, sptr sdim zipdata, 20000 zipstat=Zip( hwnd, "-r -b G:\\Desktop file.zip file", zipdata, 1024*1024 ) if zipstat != 0 : dialog "Error":end
このように指定したのですが、エラーが出てしまいます。



名無し

リンク

2013/3/9(Sat) 21:05:57|NO.52830

>>KAさん
この状態で解凍すると、Desktopというディレクトリの中にfilesができてしまいます。
なので、Desktopというディレクトリの中ではなく解凍したらfilesが出てきて欲しいのです。



暇人

リンク

2013/3/9(Sat) 22:04:59|NO.52832

G:\Desktop\file
のfileフォルダ名もサブフォルダ名も無くて良いなら(サブフォルダも全て展開された状態で圧縮される)

 -j
    ファイル名のパスを保存しない。


fileフォルダ名とサブフォルダは残したいなら

dir_cur_bak=dir_cur chdir "G:\\Desktop" zipstat=Zip( hwnd, "-r "+dir_cur_bak+"\\file.zip file", zipdata, 1024*1024 )


Desktop\fileフォルダ名は無くしたいけどサブフォルダは残したいなら

dir_cur_bak=dir_cur chdir "G:\\Desktop\\file" zipstat=Zip( hwnd, "-r "+dir_cur_bak+"\\file.zip *", zipdata, 1024*1024 )



名無し

リンク

2013/3/9(Sat) 22:17:58|NO.52835

>>暇人さん
ありがとうございます!
ディレクトリ移動が解決の鍵だったんですね!



ONION software Copyright 1997-2018(c) All rights reserved.