2

Inno Setup で作成されたセットアップ プログラムは、/LOADINF オプションを介して INI ファイルを読み取ることができました。この INI ファイルからカスタム変数を読み取ることはできますか? このオプションで指定された INI ファイルの名前を取得する関数はありますか? (それなら INI ユーティリティ関数で可能です。)

4

2 に答える 2

2

コード

ExpandConstant('{param:LoadInf}')

コマンド ライン パラメータからファイル INI ファイル名を提供します。

INF ファイルがセットアップ フォルダーにある場合は、このコードを使用します。

AddBackslash(ExpandConstant('{src}')) + ExpandConstant('{param:LoadInf}');
于 2010-10-29T04:12:32.000 に答える
1

関数を使用してコマンドライン引数を繰り返し処理し、ParamStr(i)" " で始まる引数を探し、/LOADINF=そこからファイル名を抽出します。

最初にわかった問題の 1 つは、ファイル名が相対パス記述子 (たとえば、ファイル名だけ) である可能性があるということでした。ただし、圧縮を使用する場合、現在の作業ディレクトリは%TEMP%、setup.exe があるディレクトリではなく、フォルダー内のサブフォルダーになります。したがって、これを確実に検出し、必要に応じて指定されたファイル名の先頭に追加するAddBackslash(ExpandConstant('{src}'))必要があります。

于 2010-01-13T15:14:31.333 に答える