0

私はソフトウェアセットアップパッケージを作成していますが、以前はInno Setupを使用していて、非常にうまく機能しています。

Inno Setupで遭遇した現在の問題は、簡体字中国語など、セットアップUIのすべての言語をサポートしているわけではないということです。

VSTS 2008のセットアッププロジェクトは、ほぼすべての言語をサポートしていますが、エンドユーザーが依存するソフトウェアパッケージをインストールできるようにするために、現在のインストーラーから別のインストーラーを呼び出すことはサポートしていません。

公開する私のプログラムは、C#+ VSTS 2008 + .Net 2.0で記述されたWindowsプラットフォーム(VistaおよびXP)用です。

私の問題について何かアドバイスはありますか?

よろしくお願いします、ジョージ

4

1 に答える 1

5

質問へのコメントの 1 つが示唆するように、必要な言語を Inno Setup に統合するだけでよい場合があります。Languagesこれを行うには、次のセクションを追加します。

[Languages]
Name: "en"; MessagesFile: "compiler:Default.isl"
Name: "nl"; MessagesFile: "compiler:Languages\Dutch.isl"

これにより、UI を英語とオランダ語の両方で表示できます。それに応じて他の翻訳を追加することができます。

Windows インストーラーが "ネストされたインストール" (MSI から MSI を実行すること) を許可しないという事実は、煩わしい場合があります。ただし、MSI インストーラーを UI のない (= サイレント) Inno Setup にパッケージ化し、Inno Setup で MSI を 1 つずつ実行することを検討することもできます。

編集
これは、依存関係をインストールするためにEXEファイルを実行する方法を示しています。ソフトウェアの後にインストールされる場合があることに注意してください。ソフトウェアの前にそれらをインストールする必要がある場合は、ちょっとした Pascal Script をコーディングする必要があるかもしれません - これはヘルプ ファイルで説明されています。

[Files]
DestDir: {tmp}; Source: .\Files\sample.exe; Flags: deleteafterinstall;
[Run]
Filename: {tmp}\sample.exe; StatusMsg: Installing prerequisite

これにより、ファイル.\Files\sample.exeがセットアップに含められ、インストール時に TEMP フォルダーにコピーされ、セットアップの完了後に削除されます。次に、ファイルをコピーした後、実行TEMP\sample.exeされ、終了するのを待ちます。

EDIT 2
セクション 内のアイテムの順序に関するOPのコメントについて[Run]

次の 2 つのケースが考えられます。

  1. Inno Setup を使用してソフトウェアの実際のインストール (ファイル、レジストリ エントリなどのコピー) を実行し、さらに前提条件のインストーラーを実行する必要があります。
  2. ソフトウェア用の別のインストーラーも用意されており、前提条件とソフトウェアのインストーラーを実行するには、Inno Setup が必要です。

ケース 1 の場合:セクションに
EXE ファイルを配置する必要はまったくありませんが[Run]、多くのセットアップでチェックボックス (「XYZ を今すぐ実行しますか?」 )。その場合、EXE に次の行を使用します。

Filename: {app}\yourprogram.exe; StatusMsg: Run the application; Flags: postinstall skipifsilent unchecked; Description: Run the application now

ケース 2 の場合:依存関係に従って
、セクション内のエントリを並べ替えます。[Run]つまり、最初のエントリは他のユーザーが依存するエントリであり、最後のエントリはアプリケーションのセットアップです。しかし、エントリが処理される順序についてはわかりません。

これは、セクションのドキュメントで回答される場合があります[Run]。迷ったときは、Jordan Russel (Inno Setup の作者) にアドバイスを求めてみてください。

于 2009-07-07T07:17:59.240 に答える