> On Wed, 20 Aug 2014 13:27:06 -0400, Hugo Florentino wrote: >> Existe una herramienta libre llamada Inno Setup [...] >> > > Después de sugerir Inno Setup, me entró curiosidad por juguetear con el > para hacer un script de instalación de actualizaciones. > > Aunque tanto Windows como ESET sean productos privativos, Inno Setup es > libre y muy útil para resolver problemas en instituciones donde hay > aplicaciones que solo corren en Windows, de modo que aprovecho para > poner aquà el script. > > No es nada especial, la idea es aprovechar la funcionalidad avanzada de > Inno Setup para autodetectar la ruta al servidor de actualizaciones que > se haya configurado en el equipo donde se haga la instalación, eliminar > los archivos de actualización y copiar los nuevos en esa misma ruta. En > el script, obviamente hay que reemplazar C:\eset_upd por la ruta real a > los archivos de actualización. > > También podrÃa utilizarse el preprocesador de Inno Setup para detectar > además la ruta donde se genera el mirror en el servidor o equipo que > descarga las actualizaciones (donde se supone que se compilará el > instalador), pero mejor dejar esto como estudiuo individual o para una > posible iteración futura. > > Un ejemplo de lÃnea de comando para automatizar la compilación: > "C:\Program Files (x86)\Inno Setup 5\Compil32.exe" /cc > "C:\ScriptdeInno\ActualizaESET.iss" /q > > [Setup] > InternalCompressLevel=fast > OutputBaseFilename=ActualizaESET > Compression=lzma/fast > AppName=ActualizaESET > AppVerName=ActualizaESET 0.1 > AppMutex=actueset-0.1 > DefaultDirName={code:GetESETUpdServerPath} > ShowLanguageDialog=auto > AppVersion=0.1 > MinVersion=,5.0.2195 > TimeStampsInUTC=true > AllowUNCPath=false > PrivilegesRequired=none > DisableProgramGroupPage=true > Uninstallable=false > > [Languages] > Name: es; MessagesFile: compiler:Languages\Spanish.isl > > [Files] > Source: C:\eset_upd\*.*; DestDir: {app} > > [InstallDelete] > Name: {app}; Type: filesandordirs > > [Code] > const > ESETProfilesRegKey = 'SOFTWARE\ESET\ESET > Security\CurrentVersion\Plugins\01000400\Profiles'; > > var > RootKeyArch: Variant; > > function InitializeSetup(): Boolean; > begin > if IsWin64() then > begin > RootKeyArch := HKEY_LOCAL_MACHINE_64; > Result := True; > end else > begin > RootKeyArch := HKEY_LOCAL_MACHINE; > Result := False; > end; > end; > > function GetActiveProfile(): String; > begin > if not RegQueryStringValue(RootKeyArch, ESETProfilesRegKey, 'Active', > Result) > then MsgBox('Error: Imposible obtener el perfil de actualizaciones.', > mbError, MB_OK); > end; > > function GetProfileServer(): String; > begin > if not (RegQueryStringValue(RootKeyArch, ESETProfilesRegKey + '\' + > GetActiveProfile, 'SelectedServer', Result)) > then MsgBox('Error: Imposible obtener la ruta del servidor de > actualizaciones.', mbError, MB_OK); > end; > > function GetESETUpdServerPath(Param: String): String; > var > vs: String; > begin > try > vs := GetProfileServer(); > except > vs := ExpandConstant('{userdocs}') + '\eset_upd'; > end; > Result := vs; > end; > > > -- > Este mensaje ha sido analizado por MailScanner > en busca de virus y otros contenidos peligrosos, > y se considera que está limpio. > > ______________________________________________________________________ > Lista de correos del Grupo de Usuarios de Tecnologías Libres de Cuba. > Gutl-l@jovenclub.cu > https://listas.jovenclub.cu/cgi-bin/mailman/listinfo/gutl-l Saludos Hugo, Donde se puede encontrar en .cu el Inno Setup, o que alguien suba a http://descargas.jovenclub.cu/GUTL/. Saludos
-- Nunca digas nunca, di mejor: gracias, permiso, disculpe. Este mensaje le ha llegado mediante el servicio de correo electronico que ofrece Infomed para respaldar el cumplimiento de las misiones del Sistema Nacional de Salud. La persona que envia este correo asume el compromiso de usar el servicio a tales fines y cumplir con las regulaciones establecidas Infomed: http://www.sld.cu/ -- Este mensaje ha sido analizado por MailScanner en busca de virus y otros contenidos peligrosos, y se considera que está limpio. ______________________________________________________________________ Lista de correos del Grupo de Usuarios de Tecnologías Libres de Cuba. Gutl-l@jovenclub.cu https://listas.jovenclub.cu/cgi-bin/mailman/listinfo/gutl-l