9

いくつかの制約があるため、Linux ボックスで自己解凍型の ZIP アーカイブを作成する必要があります。結果のアーカイブは、Windows でのみ実行可能である必要があります。これはまったく可能ですか?もしそうなら、どのツールがその仕事をしますか?

背景: ユーザーが私の Linux ボックスからセットアップ パッケージをダウンロードするとき、そのセットアップ パッケージに特定のキーを事前入力する必要があります。そのキーは実行時にしかわかりません。私のアイデアは、そのキーを使用して単純な .xml ファイルを作成し、その xml ファイルを使用して .msi インストーラーを自己解凍形式のアーカイブに圧縮し、そのファイルをブラウザーに送信することでした。それを実現する方法について別のアイデアがある場合は、それも聞いてみたいです

4

2 に答える 2

10

あなたの答えは次のページにあります: http://ubuntuforums.org/showthread.php?t=847329 Google を使用して、論理的に機能するように聞こえるものを見つけたこと以外は、私が功績を認めていないことに注意してください。この情報が機能すること、または言及された資料がオンラインで見つかることを保証するものではありません。私はただの Google のファンです。これが役立つことを願っています。

問題 数日前、友人のために Win32 互換の自己解凍型 ZIP ファイルを作成する必要がありました。簡単ですね。問題は、近くに Windows マシンがなく、Wine にアーカイブ プログラムをインストールしたくなかったことです。

注: Wine の IZArc などのフリーウェア ZIP プログラムを使用して、Win32 自己解凍型 ZIP ファイルを作成することもできます。申し訳ありませんが、それはこのハウツーではカバーされません。

「調査」 グーグル検索で、2003 年 8 月付けのこのフォーラム投稿を見つけました。それを読んで、自己解凍 ZIP ファイルは、適切な解凍バイナリとそれに続く通常の ZIP ファイルに過ぎないことがわかりました。Info-ZIP UnZip 5.52 に含まれている unzipsfx.exe を使用しました。

その投稿のリンクは数日前に機能していたので、探していた unzipsfx.exe を手に入れました。今日、2008 年 7 月 2 日、リンクが死んでいることがわかりました。グーグルで調べた後、どこにも機能するリンクが見つかりませんでした。ライセンスを何度か読んだところ、元の unzipsfx.exe をライセンス付きで再配布できることがわかりました。

unzipsfx-552_win32.tar.gz (80 kB) は公式の Info-ZIP パッケージではなく、著作権で保護されたソフトウェアが含まれていることに注意してください。詳細については、tarball にも含まれている Info-ZIP ライセンスを参照してください。含まれているバイナリのソース コードは、ここにあります。

ソリューション

ステップ 1、unzipsfx.exe と zip パッケージを取得します: * ターミナルを開きます (Ubuntu では alt+f2 を押して gnome-terminal と入力します) * 次のコマンドを入力します コード:

wget http://kolmoskone.homelinux.org/~kaja/kamaa/unzipsfx-552_win32.tar.gz tar zxf unzipsfx-552_win32.tar.gz sudo apt-get install zip

ステップ 2、Ubuntu で ZIP ファイルを作成する: * ファイル マネージャー (nautilus) を開き、圧縮したいファイルを選択します * 右クリックして [アーカイブの作成] (または同様のもの) を選択します。ZIP ファイルの場所を選択します。ホーム ディレクトリを使用するのが最も簡単です。タイプ .zip を選択します。コマンド ラインで ZIP ファイルを作成する方法については、man zip を参照してください。

ステップ 3、ZIP ファイルを自己解凍型にする * 次のコマンドを入力 コード:

cat unzipsfx-552_win32/unzipsfx.exe MYZIPFILE.zip > mysfxfile.exe zip -A mysfxfile.exe

mysfxfile.exe は、任意の Win32 互換システム (たとえば、Windows XP/2000/Vista や Linux の Wine を含む)、または Ubuntu の file-roller などの任意の ZIP 互換アーカイブ プログラムで開くことができるようになりました。

于 2009-05-04T01:38:54.047 に答える
1

私はunzipsfxでこれを機能させることができました。新しいバージョンが利用可能です-2009年4月にリリースされたばかりです-バージョン6.0。バージョン5.52は、必要な重要な機能をサポートしていませんでした。抽出が完了した後に特定のセットアップファイルを起動します。

そこで、6.0のソースファイルをダウンロードしました。次に、デフォルトで表示される「起動プロンプト」チェックを除外するように変更しました。Visual Studio 2008を使用して再コンパイルし、上記のチュートリアルで説明した手順を試しましたが、すべてが魅力のように機能するようになりました。

于 2009-05-05T07:08:28.787 に答える