Inno Setup - Atualizacao - executar se tal arquivo existir

Delphi

01/07/2008

Boa Noite

Gostaria de saber dos amigos se é possivel no Inno Setup, quando o usuario informar a local de destino para Atualizar o Sistema (pasta onde ja deveria conter os arquivos de instalação), verificar se existe determinado arquivo (Ex: AkiTem.inf) no destino selecionado antes de copiar os arquivos para essa pasta caso contrario desse a messagem que não existe banco de dados na pasta informada.

Forte Abraço.
Obrigado


Marcomonteiro

Marcomonteiro

Curtidas 0

Respostas

Asales

Asales

01/07/2008

Nas propriedades do arquivo para copiar o Inno Setup traz diversas configurações como:
- só copiar se o arquivo não existir
- comparar data dos arquivos
- copiar mesmo se existir
e diversas outras.

Procure na página do Inno Setup pelo IsTool que facilita na hora de gerar o script de instalação.


GOSTEI 0
Marcomonteiro

Marcomonteiro

01/07/2008

Obrigado Amigo por responder, mas no meu caso essas opções não servem, preciso criar um code (funcao) tipo Function InitializeSetup() para justamente bloquear essa copia dos arquivos caso um arquivo especifico não exista anteriormente na pasta escolhida pelo usuario. (ja exista antes da Atualizacao em execusão), tipo assim caso o arquivo tal não exista no local destino da instalação (o problema esta aki não sei como verificar o local destino escolhido para a atualizacao e não posso deixar um fixo, pois pode haver caso do sistema estar em varias pasta do micro de maneira independete, so que se o usuario cria um novo local na atualizacao um de seus icones de atalho muda para o novo local e o sistema não abre pois não tem dados.)

vi algo quase parecido mas com nome de pasta mas não permite alterar o local ja bloqueia a intalacao no inicio, tomo a liberdade de replicar o post do usuario Rodc de Mar 23, 2007 8:44 am

Código:
function InitializeSetup(): Boolean;
begin
if not ( DirExists(´C:\teste´) ) then
begin
MsgBox(´Pasta teste não existe´, mbError, MB_OK);
Result := false;
exit;
end;
end;


Quem puder ajudar agradeço.

Fraternais Saudações.


GOSTEI 0
Marcomonteiro

Marcomonteiro

01/07/2008

:lol: Resolvido pessoal, lendo o material do Inno Setup / Istool, como segue:

function NextButtonClick(CurPageID: Integer): Boolean;
var
ResultCode: Integer;
begin
case CurPageID of
wpSelectDir:

if not ( fileExists(´´+ WizardDirValue + ´\teste.inf´) ) then
begin
MsgBox(´O Destino ´+ WizardDirValue +´ NÃO contém uma Base de Dados...!!!´, mbError, MB_OK);
Result := false;
exit;
end;

end;

Result := True;
end;


GOSTEI 0
POSTAR