Bom dia galera…
Introdução:
Há mais ou menos 1 ano, fui indicado para o desenvolvimento de uma aplicação na empresa onde trabalho atualmente. Essa aplicação devia gerenciar informações previdenciárias de funcionários e gerar um relatório. Pela sua simplicidade, eu decidi implementá-la em VB6. E assim o teria feito se a empresa não tivesse adiado o projeto quando eu estava já em fase final de implementação. Naquela época eu já conhecia Java, mas não o suficiente para fazer o programa nessa linguagem. Mas agora a empresa retomou o projeto, e estou com um forte desejo de implementá-lo em Java, para eliminar limitações que o VB6 ocasionou e outros problemas, além de fazer que ele rode em Windows e Linux, as duas plataformas alvo do programa.
O problema:
Como o programa pode ser largamente usado, deve-se implementar uma lógica para impedir (ou pelo menos restringir) a pirataria. Já tenho a lógica parcialmente planejada, mas o [color=“red”]problema[/color] é que eu preciso, no caso do Windows, ter acesso ao Registro e obter informações sobre o hardware instalado, como por exemplo o “Número de série do volume” do HD e o tipo/nome do processador.
A questão:
Sei que deveria usar JNI para isso, tanto para acessar o Registro como para obter informações sobre o hardware (como no tópico Número de série do volume, como descobrir?). Mas:
1 - Há alguma outra forma de implementar “lógica” anti-pirataria em Java? Mesmo se eu fizesse uma ativação via internet, teria que ter acesso ao Registro do Windows.
2 - Eu consigo invocar DLL’s ActiveX ou controles ActiveX (criadas com VB ou Delphi) com Java? Uma vez não sei onde eu li que SWT consegue invocar tais componentes.
3 - Como eu implemantaria isso em Linux, já que ele não possui um equivalente ao Registro do Windows (ou possui?)?
De qualquer forma, isso vai dar uma boa discussão. É aí isso galera.
