Chamar função SE arquivo.pas existir no projeto.

Delphi

28/04/2014

Não sei se tem como fazer isso, mas estou em um projeto que tem 2 versões. Na última estou precisando alterar um componente e adicionar uma chamada de uma função que está em uma classe nova que não existe na versão anterior. Para não ficar com 1 versão deste componente para cada versão do projeto (já que compilar o projeto antigo com o componente alterado daria erro pela Classe que criei não existir nela), gostaria de saber se no Delphi existe a possibilidade de eu chamar a função apenas se no Projeto existir essa classe. Isso me ajudaria a não ter que usar um componente para cada versão do projeto.

PS:
1 - ) A classe está em um arquivo .Pas separado.
2 - ) Estou usando a versão XE2 do Delphi
Rafael Brendolan

Rafael Brendolan

Curtidas 0

Respostas

Ricardo

Ricardo

28/04/2014

Quando preciso saber da existência de uma arquivo eu a função ExistFile.

If not ExistFile(caminho+arquivo) = true then

Se você quer é saber se arquivo existe pode usar que vai funcionar.

GOSTEI 0
Rafael Brendolan

Rafael Brendolan

28/04/2014

Obrigado pela resposta mas eu gostaria que fosse simples assim. hehe
Eu preciso saber em modo de execução se a minha classe TClass.pas está adicionada no Projeto. Se estiver, então um bloco de código irá rodar (bloco dependente dessa classe), se não, ele irá pular este bloco.
Na verdade nem sei se tem como fazer isso, se tiver irá me livrar de manter duas versões de um mesmo componente, pois como escrevi em cima, tive que modificar este componente chamando uma função dessa classe, mas isso é só na versão nova, na antiga não existe essa classe, então o Delphi simplesmente não iria compilar por falta da mesma.
GOSTEI 0
Cauê Nishijima

Cauê Nishijima

28/04/2014

Não dá pra fazer com try..except
Tenta instanciar se der exceção você sabe que não existe e vai pro código que esta em except....Não sei se esse é a melhor forma, mas deve funcionar
GOSTEI 0
POSTAR