• ベストアンサー

コマンドラインからzip32j.dllを呼び出しての圧縮。

今、WinXP HE上で、ソフトウェアを使わずに DOS窓のコマンドラインからzip32j.dllを呼び出し ファイルを圧縮しようと思ってるのですが、 rundll32からzip32jの中のどの関数を呼び、 どのように引数を渡したらよいのか、 zip32j.dllのソースを調べましたがわかりませんでした。 どなたかご存知の方があれば教えていただきたく思います。 また、もし他の方法をご存知であれば そちらのほうもお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • ittochan
  • ベストアンサー率64% (2667/4137)
回答No.2

以前TransLha.ocxを使用した CABファイルにファイルを追加する スクリプトを作成しました。 参考になれば(VBScriptです) Set oCb = CreateObject("TransLhaO.TransLha") oCb.ArcMode=2 oCb.pBaseFolder = "C:\test" oCb.pFilesClear oCb.eArcFileName="C:\test\test.cab" oCb.pAddFile "C:\test\test.txt" oCb.Pack

komugi100g
質問者

お礼

お時間を割いていただき、ありがとうございます。 大変助かりました。 自分はまだJScriptのほうが慣れてるので 次のように書き直させていただいたところ、 うまく動作しました。 var FSO = WScript.CreateObject("Scripting.FileSystemObject"); var otl = WScript.CreateObject("TransLhaO.TransLha"); otl.ArcMode = 1; otl.pBaseFolder = FSO.GetAbsolutePathName(".\\"); otl.pFilesClear(); otl.pArcFileName = "圧縮先ファイル名.zip"; otl.pAddFile(FSO.GetAbsolutePathName("圧縮元ファイル名")); otl.Pack();

その他の回答 (1)

  • ittochan
  • ベストアンサー率64% (2667/4137)
回答No.1

ActiveXコンポーネントの TransLha.ocx等 を利用すれば VBScriptかJScriptのスクリプトを書いて コマンドプロンプトから CScript.exe(Windowsに標準で付いてます)で スクリプトを呼び出せば可能です。

参考URL:
http://www.csdinc.co.jp/archiver/lib/activex/index.html

関連するQ&A