質問

私は、私は更新が必要であることをユーザーに伝える簡単なメッセージボックスを表示していない場合は、マシンにMicrosoftのアップデートがインストールされているかどうかをチェックするために私のInno Setupのインストーラで検証を作ってるんだ、これがありますメッセージコード:

MsgBox(
  'Your system requires an update supplied by Microsoft. ' +
  'Please follow this link to install it: ' + 
  'http://www.microsoft.com/downloads/details.aspx?FamilyID=1B0BFB35-C252-43CC-8A2A-6A64D6AC4670&displaylang=en',
  mbInformation, MB_OK);

私は、URLのWebページへのハイパーリンクを作りたいが、私はどのようにそれを把握することができていない、ハイパーリンクとしてテキストを追加するInno Setupのでは可能ですか?

感謝します。

役に立ちましたか?

解決

Inno Setupの中MsgBox()機能は、Windows標準の<のhrefは= "http://msdn.microsoft.com/en-us/library/ms645505%28VS.85%29.aspx" のrel =」のラッパーですそれは単にそこにリンクを表示することはできませんので、私の知る限りでは、埋め込まれたリンクをサポートしていませんnoreferrer "> MessageBox() の機能、。

あなたはしかし、何ができることは、更新が必要であることをユーザーに通知し、デフォルトのブラウザでリンクを開くかどうか、それらを依頼することです。ような何かます:

function InitializeSetup(): Boolean;
var
  ErrCode: integer;
begin
  if MsgBox('Your system requires an update supplied by Microsoft. Would you like to visit the download page now?', mbConfirmation, MB_YESNO) = IDYES
  then begin
    ShellExec('open', 'http://www.microsoft.com/downloads/details.aspx?FamilyID=1B0BFB35-C252-43CC-8A2A-6A64D6AC4670&displaylang=en',
      '', '', SW_SHOW, ewNoWait, ErrCode);
  end;
  Result := False;
end;

このコードでは、インストールを中止しますが、更新プログラムがインストールされているかどうかをチェックし、そうでない場合は、次のページへのナビゲーションを防ぐ代わりにカスタムページを作成することもできます。更新はしかし、システムの再起動なしでインストールすることができた場合にのみ動作します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top