Ver Mensaje Individual
  #5  
Antiguo 09-12-2014
Avatar de nlsgarcia
[nlsgarcia] nlsgarcia is offline
Miembro Premium
 
Registrado: feb 2007
Ubicación: Caracas, Venezuela
Posts: 2.206
Reputación: 23
nlsgarcia Tiene un aura espectacularnlsgarcia Tiene un aura espectacular
diegoferxmr,

Cita:
Empezado por diegoferxmr
...que el instalador de mi aplicación se cancele si se está ejecutando en un equipo que tiene ya mi aplicación instalada...busco un archivo clave que siempre se instala con mi app...


Revisa este código:
Código Delphi [-]
// Script generated by the Inno Setup Script Wizard.
// SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!

#define MyAppName "Setup OOP"
#define MyAppVersion "1.0"
#define MyAppPublisher "Nelson, C.A."
#define MyAppURL "http://www.clubdelphi.com"
#define MyAppExeName "OOP.exe"

[Setup]
// NOTE: The value of AppId uniquely identifies this application.
// Do not use the same AppId value in installers for other applications.
// (To generate a new GUID, click Tools | Generate GUID inside the IDE.)

AppId={{395C807B-D040-4B01-9AB5-2A9987174C22}
AppName={#MyAppName}
AppVersion={#MyAppVersion}
// AppVerName={#MyAppName} {#MyAppVersion}
AppPublisher={#MyAppPublisher}
AppPublisherURL={#MyAppURL}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
DefaultDirName=C:\NelsonTest\OOP\{#MyAppName}
DefaultGroupName={#MyAppName}
AllowNoIcons=yes
OutputDir=D:\Developers Delphi\Delphi Test Inno Setup\Test-1 (Install)
OutputBaseFilename=setup
Password=12345
Compression=lzma
SolidCompression=yes

[Languages]
Name: "english"; MessagesFile: "compilerefault.isl"

[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked;

[Files]
Source: "D:\Developers Delphi\Delphi Test Inno Setup\Test-1  (Install)\OOP.exe"; DestDir: "{app}"; Flags: ignoreversion;  BeforeInstall:MsgInstall;
// NOTE: Don't use "Flags: ignoreversion" on any shared system files

[Icons]
Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon

[Run]
Filename: "{app}\{#MyAppExeName}"; Description:  "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}";  Flags: nowait postinstall skipifsilent

[code]
// Mensaje previo a la instalación
procedure MsgInstall();
begin
  MsgBox('Se Instalara el Programa: ' + CurrentFileName, mbInformation, MB_OK);
end;

// Realiza el Setup en función de un archivo de control
function InitializeSetup(): Boolean;
begin
  if FileExists('C:\NelsonTest\FileControl.txt') then 
  begin 
    MsgBox('Setup Cancelado por Existencia de Archivo de Control', mbInformation, MB_OK);
    Result := False;
  end
  else
    Result := True;
end;
El código anterior en Inno Setup 5.5.5 bajo Windows 7 Professional x32, permite instalar una aplicación en función de la existencia de un archivo de control.

Revisa esta información:
Espero sea útil

Nelson.
Responder Con Cita