![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|
|
#1
|
||||
|
||||
|
Hola,
Básicamente las instalaciones de InnoSetup guardan una clave en el Registro de Windows que tiene que ver con la directiva "AppId" que podemos usar en el apartado "Setup". Si usas la directiva "UsePreviousAppDir" e InnoSetup detecta que tu aplicación (por su "AppId") ya fue instalada en el sistema... propondrá al usuario como directorio de instalación el directorio donde esté instalada la versión previa de tu aplicación. Otra cosa es que algo así te sirva o qué. ![]() |
|
#2
|
||||
|
||||
|
Ok. entendido.
El problema es que la aplicación, ya está instalada a "pinrel", es decir... instalé el servidor Fb15 por un lado y la aplicación la copie en una carpeta por otro, y lo mismo hice con los clientes, instalé los clientes Fb por un lado y la aplicación la copie a mano. Eso si lo más estandarizado posible ![]() .Y ahora ya me he metido a saco para crear un instalador que lo haga todo. Pero mi primera preocupación o inquietud es hacer actualizaciones(el instaldor busca el programa en el registro y copia la nueva versión), por esto era mi pregunta. De todas formas te agradezco la explicación, me ha quedado más claro la cosa. Chao ![]() |
|
#3
|
||||
|
||||
|
Pues parece que ya encontré la solución.
![]() En la ayuda nos dice: Cita:
Código:
[Setup]
AppName=Usuarios
AppVerName=Usuarios 1.0
AppPublisher=Rm&Monge@Galocha
AppPublisherURL=http://www.example.com/
AppSupportURL=http://www.example.com/
AppUpdatesURL=http://www.example.com/
DefaultDirName={code:GetDirect}
DefaultGroupName=Usuarios
OutputDir=C:\basura
OutputBaseFilename=Security_Setup
Compression=lzma
SolidCompression=yes
[Languages]
Name: spanish; MessagesFile: compiler:Languages\Spanish.isl
[Files]
Source: D:\PROYECTOS\Rota_SQL\seguridad\security.exe; DestDir: {code:GetDirect}; Flags: ignoreversion
[Icons]
Name: {group}\Usuarios; Filename: {app}\security.exe
[Run]
Filename: {app}\security.exe; Description: {cm:LaunchProgram,Usuarios}; Flags: nowait postinstall skipifsilent
[-code]
var
Dir :string;
function InitializeSetup(): Boolean;
begin
result:=True;
Dir:='';
if RegQueryStringValue(HKEY_LOCAL_MACHINE, 'SOFTWARE\RM\ROTA_SQL\APLICACION','Path', Dir) then
if Dir <> '' then
Dir:=ExtractFilePath(Dir);
end;
function GetDirect( p :string):string;
begin
if dir <>'' then
result:=Dir
else
result:='c:\basura\usuarios';
end;
Bueno este código ha sido lo primero que me ha venido a la cabeza, pero la duda que tenía, se ha despejado. Bueno Aquí queda dicho, por si le interesa a Alguien. ![]() ![]() Chao. |
|
#4
|
||||
|
||||
|
Hola,
Pues sí. Algo había leído sobre el asunto pero no me quedaba claro. Ahora con el ejemplo que has puesto me queda más claro y es probable que alguna vez necesite de hacer algo similar. Muchas gracias. ![]() |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Instalador con Inno Setup | jouls | Varios | 1 | 04-07-2007 21:12:03 |
| problema con inno setup | Choclito | Varios | 0 | 22-06-2006 18:27:42 |
| inno setup 5 | Cosgaya | Varios | 0 | 10-01-2006 13:09:38 |
| Inno Setup Ini? | marceloalegre | Varios | 2 | 07-12-2005 20:49:17 |
| Inno Setup | tarco35 | Varios | 0 | 09-04-2005 16:48:01 |
|