プラグインなしでZIPファイルを扱う
| 日付 | 2018/12/04 |
|---|---|
| ID | 18-009 |
| バージョン | v17 |
| プラットフォーム | Windows |
Windows 10 バージョン1709以降からは、コマンドラインからtarが利用できるようになりました。これまでプラグインに頼るしか方法がなかったWindowsでも、ZIPファイルをLAUNCH EXTERNAL PROCESSコマンドを通して取り扱うことができます。
ただし、tarコマンドは64ビットでビルドされているので、32ビットのアプリケーションからは呼び出すことができません。4Dの場合も同様ですので、64ビット版4Dの利用が必須になります。
次のコードは、ZIPファイルを指定したフォルダに展開する例題になります。
C_TEXT($path_file;$path_folder)
$path_file:="C:\\Users\\ユーザー名\\ファイル名.zip"//展開するZIPファイル
$path_folder:="C:\\Users\\ユーザー名\\フォルダ名" //展開先フォルダ
C_TEXT($command;$inputStream;$outputStream;$errorStream)
C_LONGINT($pid)
$command:="cmd.exe /c tar -xf \""+$path_file+"\""
SET ENVIRONMENT VARIABLE ("_4D_OPTION_HIDE_CONSOLE";"true")
SET ENVIRONMENT VARIABLE("_4D_OPTION_CURRENT_DIRECTORY";$path_folder)
LAUNCH EXTERNAL PROCESS($command;$inputStream;$outputStream;$errorStream;$pid)