32/64ビットインストールのソースフォルダ(および保存先フォルダ)を動的に取得します。ですから、Innoセットアップの[Files]セクションでどのように指定すればいいですか? 以下は、コンパイルエラーを与える: - >Inno Setupの[Files]セクションで "code"を使用するにはどうすればよいですか?
[Files]
Source: {#MySourcePath}\{code:GetSourceLibFolder}\*.jar; DestDir: {code:GetAppDir}\lib\;
私はコードセクションで定義されたGetSourceLibFolder()
とGetAppDir()
機能を持っています。 機能は非常に単純で、単に変数を返す:
function GetSourceLibFolder(Param: String): String;
begin
Result:= SourceLibFolder;
end;
function GetSourceBinFolder(Param: String): String;
begin
Result:= SourceBinFolder;
end;
ありがとう!
コードを '[Code]'から呼び出し、InnoSetupスクリプトの他の場所で使用できるかどうかはわかりません。 '#define'文を使って関数を適用する文字列を作成する方法はありますか?([http://stackoverflow.com/questions/2329979/can-the-setup-filename-be-derived-from-the-executable -file-version-number](http://stackoverflow.com/questions/2329979/can-the-setup-filename-be-derived-from-the-executable-file-version-number)) –
このソースはどこですかlibフォルダ:あなたのInnoSetupスクリプトのベースフォルダを基準にしたソースフォルダ内にありますか?あなたが '{app}'だけを使うことができるとき、なぜあなたは目的地のフォルダに気を配っていますか?例えば、あなたのInnoSetupスクリプトファイルが '。\'フォルダにあり、あなたのjarライブラリが '。\ install \ lib'にあり、アプリケーションフォルダ' {app} 'の' lib'フォルダに入れたいとしましょう。ソース: "install \ lib \ *。jar"を定義することができます。 DestDir: "{app}¥lib" '簡単な方法:各スクリプトファイルに異なるソースフォルダを定義することで、32ビットおよび64ビットのセットアップごとに別々のInnoSetupスクリプトを作成できます。 – ecle
@eee:32ビットと64ビットのシステム用に1つのインストーラが必要なので、2つの異なる "lib"フォルダがあります。 lib-32とlib-64は動的に設定され、動的に読み込みたいものです。 – Saurabh