Inno Setupバージョン5.4.2を使用しています。
コピーするファイルのパスを定義したい(.dllなどの特殊ファイルに使用する、ベースパスとサブディレクトリ名の2つの部分として[Files]セクションのSource:パラメータ)。以下:
#define MyAppSetupDir "D:\MyApp\setup"
#define MyAppSetupQtDLLs {#MyAppSetupDir}"\DLLs"
[Files]
Source: {#MyAppSetupDir}\MyApp.exe; DestDir: {app}; Flags: ignoreversion
Source: {#MyAppSetupDLLs}\mstext35.dll; DestDir: {app}; Flags: ignoreversion
しかし、私は次のコンパイルエラーを受け取ります
[ISPP] Expression expected but opening brace ("{") found.
中括弧も「」で囲んでみました。
#define MyAppSetupQtDLLs "{#MyAppSetupDir}\DLLs"
でも今回は
Error: Source file "D:\MyApp\setup\{#MyAppSetupDir}\DLLs\mstext35.dll" does not exist.
そのため、ISSPはMyAppSetupDir変数を正しく置き換えていますが、ディレクティブを認識しなかったかのように、単純なテキストを再度配置します。
私はあらゆる場所を検索しましたが、{commonappdata}
の使用について discussion はすでに見つかりましたが、ドキュメントでもKBでも、その方法を見つけることができませんでした。私は近くにいるように見えますが、適切な解決策を見つけられないので、いくつかのヒントを本当に感謝します。
#define MyAppSetupDir "D:\MyApp\setup"
#define MyAppSetupQtDLLs MyAppSetupDir + "\DLLs"