|
分類:[VB.NET/VB2005 以降]
CodeZineにて公開されている「動的PInvokeによる統合アーカイバ仕様DLLを使用した書庫の展開と作成」を参考にしてVB2008にてunlha32.dllを利用した圧縮・展開プログラムを作成しています。
記事を参考に一通りのunlha32.dllの利用を行い、unlha()呼び出し時のオプション等を操作しいろいろと試行錯誤しているのですが、自前で圧縮及び展開中の進捗状況を実装する方法がわかりません。
一般的に配布されている解凍ソフト等の動作を見ると、一部のものはdllが提供する標準の進捗ダイアログを表示しているようですが、自前で実装しているものもたくさんありました。
こういったものはどのような方法で進捗状況を取得し表示しているのでしょうか。
現状はunlha()を呼び出す際のオプションでDLLにて提供される標準のダイアログを非表示にしており、プロセスの応答値のみで処理の終了を判断しております。 これを進捗状況(予め取得したアーカイブ内のファイル数に対して現在どの程度展開されているか等)を自前で表示したいと考えています。
ご経験のある方がいればご教授いただければと思います。
よろしくお願いいたします。
|