Hola,
Cita:
Empezado por MAXIUM
Como puedo saber si se encuentra instalado Flash Player en un sistema Windows y además saber su versión.
|
Bueno, le he realizado el código en Inno setup para detectar la versión de Adobe Flash instalada en el equipo, Ponga estas líneas en la sección CODE de su script de Inno Setup:
Código Delphi
[-]
function ObtenerVersionFlash(var BufVersion, BufArchivo: string): Boolean;
var
ArchivoOCX: string;
Version: string;
begin
Result := False;
Version := '';
if RegQueryStringValue(HKEY_CLASSES_ROOT, 'CLSID\{D27CDB6E-AE6D-11cf-96B8-444553540000}\InprocServer32', '', ArchivoOCX) = true then
begin
ArchivoOCX := RemoveQuotes(ArchivoOCX);
if FileExists(ArchivoOCX) = true then
if GetVersionNumbersString(ArchivoOCX, Version) = true then
begin
BufVersion := Version;
BufArchivo := ArchivoOCX;
Result := True;
end;
end;
end;
function InitializeSetup(): Boolean; var
VersionFlash, RutaFlash: string;
begin
if ObtenerVersionFlash(VersionFlash, RutaFlash) = true then
begin
MsgBox('Versión de Adobe Flash instalado en su equipo: ' + VersionFlash + #10 + 'Ruta completa del componente: ' + RutaFlash, mbConfirmation, MB_OK);
Result := true;
end
else
begin
MsgBox('No se ha podido detectar la versión de Adobe Flash instalada en su equipo.' + #10#10 + 'Por favor, descargue el componente desde el sitio Web oficial de Adobe y vuelva a ejecutar este asistente.', mbCriticalError, MB_OK);
Abort;
end;
end;
Pruebe este código con Windows Vista, por que sólo lo he testeado para Windows 98, ME, 2000 y XP
Cita:
Empezado por MAXIUM
Lo pregunto para saber como incluir el instalador de flashplayer en InnoSetup.
|
Para este caso, descargue el instalador de Adobe Flash para IE/Firefox a su disco duro desde el sitio de Adobe, y luego, especifíquelo en la sección FILES de su script de Inno Setup como se indica en el ejemplo siguiente:
Código:
[Files]
Source: Flash_Player_10_ActiveX_instalador.exe; DestDir: {tmp}; DestName: FlashPlayerTMP.exe; Flags: ignoreversion deleteafterinstall
Y luego añada las siguientes líneas en las la sección CODE de su script de Inno Setup:
Código Delphi
[-]procedure CurStepChanged(CurStep: TSetupStep); var
CodSalida: integer;
begin
if CurStep = ssPostInstall then
if Exec(ExpandConstant('{tmp}\FlashPlayerTMP.exe'), '/s', '', SW_HIDE, ewWaitUntilTerminated, CodSalida) = False then
end;
Para cualquier otra duda con Inno Setup, no dude en hacerla acá, ya que domino bastante este compilador de instalaciones a base de pascal scripts.
Obviamente, usted adaptará el código que le he facilitado a sus necesidades =)
Tambien si tiene una alguna duda de este código para Delphi, consultela
Buena suerte y cordiales saludos.
-