圧縮ファイルを操作しよう
Ver 1.1 今後ほかの命令、オプションについてもサポート予定です。
New 解凍・圧縮状況ウィンドウが表示されるようになりました!!
<多機能圧縮ソフトを作ろう>
|
宣 言 |
| (Private) Declare Function Unlha Lib "UNLHA32.DLL" (ByVal Callhwnd As Long, ByVal LHACommand As String, ByVal RetBuff As String, ByVal RetBuffSize As Long) As Long |
|
引 数 説 明 |
|
Callhwnd |
Long |
Unlhaを呼び出すアプリケーションのウィンドウハンドル(例:Form1.hwnd) |
|
LHACommand |
String |
Unlhaに渡すコマンドの文字列。DOS版LHAと同様のものが指定可能。 |
|
RetBuff |
String |
Unlhaが結果を返すための変数 |
|
RetBuffSize |
Long |
RetString$の大きさ(Dim RetStr as string*255の「255」の部分が大きさとなる) |
|
LHACommandに関する追加説明 |
CallCommand$に次のコードを指定することで、次の機能が実現できます。
|
コード |
機能 |
使用頻度 |
|
a c:\file.lzh c:\file\*.* |
c:\file\のすべてのファイルをc:\file.lzhという名前で圧縮する |
A |
|
e c:\file.lzh c:\file\ |
c:\file.lzhというファイルをc:\fileディレクトリーに解凍する |
A |
まだまだオプションや命令はたくさんあるのですが、数が多すぎて説明できません。ここで説明する数は増やしていくつもりですが、詳しく知りたい方はUnlhaに付属のテキストファイルを参照してください。
|
サ ン プ ル プ ロ グ ラ ム |
動作確認:Visual Basic 5.0(Visual Basic 4.0でも問題なく動作するはずです),Windows98
| Option Explicit Private Declare Function Unlha Lib "UNLHA32.DLL" (ByVal Callhwnd As Long, ByVal LHACommand As String, ByVal RetBuff As String, ByVal RetBuffSize As Long) As Long Private Sub Form_Click() Dim Ret As String * 255 Dim SendStr As String SendStr = "a c:\file\file.lzh c:\file\*.*" 'c:\file\ディレクトリーのファイルを圧縮する場合 'SendStr = "e c:\file.lzh c:\file\" 'c:\file.lzhというファイルを解凍したい場合は"'"をとってください Unlha Form1.hWnd, SendStr, Ret, 255 'UnLHA実行 End Sub |
<更新履歴>
Ver 1.0 とりあえず公開
Ver 1.1 Ver 1.0のバグフィックス