Pythonでctypesを使ってUNLHA32.dllを扱う2

  • February 08, 2009 08:39

ちょっと前ですが、

ueBLOG | Pythonでctypesを使ってUNLHA32.dllを扱う

の続き。

実際の圧縮や解凍はどうするかという話ですが、

# 圧縮
>>> from ctypes import windll
>>> com = r"a c:\temp\archive.lzh C:\temp\*.csv"
>>> windll.UNLHA32.Unlha(0, com, None, 0)

# 解凍
>>> com2 = r'x -r1 "c:\temp\archive.lzh" "C:\temp\hoge2\" *.*'
>>> windll.UNLHA32.Unlha(0, com2, None, 0)

になります。

参考: Pythonで7-zip32.dll・UNLHA32.DLLを扱う - Fioの素敵な日々

UNLHA32.dllのloadは

>>> unlha = windll.LoadLibrary("UNLHA32.dll")

のようにして

>>> unlha.Unlha(0, com2, None, 0)

としていたのですが、windll.UNLHA32でOKだったようです。