Frage

Ich bin eine Validierung in meinem Inno Setup Installer machen zu überprüfen, ob ein Microsoft-Update auf dem Computer installiert ist, wenn nicht, ich bin ein einfaches Meldungsfeld zeige den Benutzer zu sagen, dass das Update erforderlich ist, ist dies die Meldung Code:

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);

Ich mag die URL einen Hyperlink auf die Webseite machen, aber ich habe nicht in der Lage gewesen, um es herauszufinden, wie ist es in Inno Setup möglich Text als Hyperlink hinzufügen?

Danke.

War es hilfreich?

Lösung

Die MsgBox() Funktion in Inno Setup ist ein Wrapper für die Standard-Windows- MessageBox() Funktion, die AFAIK nicht eingebettete Links unterstützt, so dass es einfach nicht möglich ist, da die Verbindung zu zeigen.

Was Sie könnten jedoch zu tun ist, den Benutzer zu benachrichtigen, dass das Update erforderlich ist, und sie bitten, ob der Link im Standard-Browser zu öffnen. So etwas wie:

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;

Dieser Code wird die Installation abbrechen, aber man konnte eine benutzerdefinierte Seite stattdessen erstellen, die überprüft, ob das Update installiert wurde, und andernfalls verhindert Navigation auf der nächsten Seite. Dies würde nur funktionieren, wenn das Update ohne Neustart des Systems installiert werden, though.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top