Como saber se o delphi está instalado?

15/12/2005

0

Como posso saber se o delphi está instalado no computador?
Quais são as chaves do registro que ele cria?. Existe uma chave que seja padrão para todos as versões do delphi?


Xandyr

Xandyr

Responder

Posts

16/12/2005

Xandyr

Sobe


Responder

16/12/2005

Adriano Santos

Como posso saber se o delphi está instalado no computador? Quais são as chaves do registro que ele cria?. Existe uma chave que seja padrão para todos as versões do delphi?


O que vc precisa fazer? Por acaso é para testar o desenvolimento de componentes?


Responder

16/12/2005

Michael

Até a versão 7 do Delphi, basta vc verificar se a chave HKEY_CURRENT_USER\Software\Borland\Delphi\<versão>.0 existe.

A partir do Delphi 8, verifique HKEY_CURRENT_USER\Software\Borland\BDS\<versão>.

[]´s


Responder

19/12/2005

Xandyr

[quote:5d87e19996=´Adriano Santos´]
Como posso saber se o delphi está instalado no computador? Quais são as chaves do registro que ele cria?. Existe uma chave que seja padrão para todos as versões do delphi?


O que vc precisa fazer? Por acaso é para testar o desenvolimento de componentes?[/quote:5d87e19996]

Justamente. Estou criando um componente com uma versão para uso não comercial e gostaria de saber se o delphi está instalado na máquina que a pessoa está testando o componente, caso não vou exibir um logo, assim que o componente for instanciado.


Responder

19/12/2005

Michael

Esta não é uma forma segura de se criar uma versão shareware de um componente. Se vc exibir a mensagem de registro apenas se o Delphi não estiver instalado, basta criar as chaves e pronto, sem instalar o Delphi. Entendeu?

O que geralmente se faz nestes casos é, no método [b:d34ffc6cf6]Loaded [/b:d34ffc6cf6]do componente, vc verifica se ele está sendo executado em Design-time, através da propriedade [b:d34ffc6cf6]ComponentState[/b:d34ffc6cf6], e se não for, vc exibe a mensagem de registro. Desta forma seu componente só funcionará se executado dentro do Delphi.

[]´s


Responder

19/12/2005

Martins

Esta não é uma forma segura de se criar uma versão shareware de um componente. Se vc exibir a mensagem de registro apenas se o Delphi não estiver instalado, basta criar as chaves e pronto, sem instalar o Delphi. Entendeu? O que geralmente se faz nestes casos é, no método [b:dae54bd521]Loaded [/b:dae54bd521]do componente, vc verifica se ele está sendo executado em Design-time, através da propriedade [b:dae54bd521]ComponentState[/b:dae54bd521], e se não for, vc exibe a mensagem de registro. Desta forma seu componente só funcionará se executado dentro do Delphi. []´s


:D Mandou bem Michael, acredito q uma versão demo do RDUsers e RDPrint funcionem dessa forma tb.


Responder

19/12/2005

Adriano Santos

[quote:938c773835=´Michael´]Esta não é uma forma segura de se criar uma versão shareware de um componente. Se vc exibir a mensagem de registro apenas se o Delphi não estiver instalado, basta criar as chaves e pronto, sem instalar o Delphi. Entendeu? O que geralmente se faz nestes casos é, no método [b:938c773835]Loaded [/b:938c773835]do componente, vc verifica se ele está sendo executado em Design-time, através da propriedade [b:938c773835]ComponentState[/b:938c773835], e se não for, vc exibe a mensagem de registro. Desta forma seu componente só funcionará se executado dentro do Delphi. []´s


:D Mandou bem Michael, acredito q uma versão demo do RDUsers e RDPrint funcionem dessa forma tb.[/quote:938c773835]


Só completando o que o [b:938c773835]Michael[/b:938c773835] disse, veja uma forma:

if not (csDesigning in ComponentState) then 
  ShowMessage(´Componente desenvolvido por Adriano Santos´);


Lembrando que vc deve deixar a disposição somente o DCU do componente, do contrário o cara pode alterar seu fonte e usar normalmente.


Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar