1

7z 圧縮ファイルに関する特定のヘルプが必要です。7zファイルとは何かを知っていることを願っています。7zipによって作成された圧縮ファイル形式です。

エンドユーザーに10 GB以上のデータを提供する必要がある(7zipで圧縮した後)。

そこで、7zip を使用してデータを圧縮し、ファイルを 1024MB (1GB) に分割します。したがって、たとえば 10GB のデータの場合、次のような 10 個のファイルになります。

Data.7z.001
Data.7z.002
Data.7z.003
Data.7z.004
Data.7z.005
Data.7z.006
Data.7z.007
Data.7z.008
Data.7z.009
Data.7z.010

それで、それらのデータを 3 DVD ディスクに入れました。

また、そのデータ用のエクストラクター/インストーラー (後でアプリと呼びます) も作成しました。

私のアプリは、バックグラウンドで 7zip CLI (コマンド ライン インターフェイス) を使用してデータを抽出します。インストーラーも DVD に入れました。

現在のシナリオ:

ここで、ユーザーは最初にすべてのディスク (この例では 3 つのディスク) を 1 つのフォルダーにコピーする必要があります。次に、インストーラーを実行してファイルを抽出します。

7z GuI/CLI は見つからないファイルの検索をサポートしていないため、すべてのディスクを単一の同じフォルダーに配置する必要があります。つまり、たとえば、Data.006.7z ファイルが見つからない場合、ユーザーにそのファイルを参照して選択するように求めません。エラーメッセージでプロセスを中止するだけです。

現在のシナリオの問題: 前述のように、ユーザーは最初にすべてのディスクを HDD にコピーする必要があります。3 つの大きな問題があります。

1. They must have that much space to copy all the disk in to same folder/drive
2. It will take so long to copy the disk then extract the data.
3. It need double space than it should :(

私が探しているもの: 7zip に LZMA SDK があることを確認しました。しかし、そのためのvb.netクライアントライブラリはありません:(。vb.netプロジェクトでそのLZMA SDKを使用しようとしています。したがって、これらの7zファイルを処理して、7zip gui / issueを克服できます。

したがって、私のアプリは最初にディスク 1 で見つかった 7z ファイル (たとえば 001 から 004) を抽出し、次に 2 番目のディスクを要求し、ユーザーが 2 番目のディスクを配置すると、その番号からたとえば 005 に続き、完了するとディスク 3 を要求します必要なときなど..

それが理にかなっていることを願っていますか?

一部のインストーラーがLZMAを使用して複数のディスクをカバーする可能性のあるファイルを圧縮し、インストーラーがそれらを正しくインストールするのを見るので、これが可能であることを私は知っています:)

だから、誰でも私が目標を達成するのを助けることができますか? お願いします?

少し早いですがお礼を..

よろしくお願いします

4

1 に答える 1

0

7z でファイルを解凍するには、最初のファイルのみが必要です

Dim exePath As String = "C:\Program Files\7-Zip\7z.exe"
Dim args As String = "e C:\DATA\TestData\K0080130001.7z.001" + " -o" "C:\DATA\TestData\New Folder\"""
System.Diagnostics.Process.Start(exePath, args)
于 2016-04-17T19:47:04.220 に答える