0

実行時にWizardImageFileを変更することは可能ですか?ある条件でこの絵を変えて欲しいです。コードで変更できませんでした。{code:GetGraphics}もWizardImageFileパラメーターで使用できません。誰かが実行時にそれをうまく変更しましたか?WizardForm.WizardBitmapImageの画像を設定する別の方法があるのではないでしょうか。

4

1 に答える 1

4

次のスクリプトは、午前か午後かに応じて、2つの画像のいずれかを条件付きで表示する方法を示しています。これらの画像は、この目的のためだけにセットアップに含まれ、ウィザードフォームが初期化されるときに、セットアップで使用される一時ディレクトリに抽出されます。コードセクションを使用してディレクティブ値を変更しようとしたためWizardImageFile(これは不可能です)、:のWizardBitmapImageイメージを使用して作業しWizardFormます。

[Setup]
AppName=My Program
AppVersion=1.5
DefaultDirName={pf}\My Program
OutputDir=userdocs:Inno Setup Examples Output

[Files]
Source: "Image1.bmp"; Flags: dontcopy
Source: "Image2.bmp"; Flags: dontcopy

[Code]
procedure InitializeWizard;
var
  FileName: string;
begin
  if StrToInt(GetDateTimeString('h', #0, #0)) < 12 then
    FileName := 'Image1.bmp'
  else
    FileName := 'Image2.bmp';

  ExtractTemporaryFile(FileName);
  WizardForm.WizardBitmapImage.Bitmap.LoadFromFile(
    ExpandConstant('{tmp}\' + FileName));
end;
于 2013-02-23T11:38:46.633 に答える