Usando o nslock para protegendo sua aplicação
Autor/fonte: Alexandre Burzum
E-mail/Url: http://www.freecode.com.br/drartigos/artigo.php?cdart=12&id=125
Tags: [ nslock ]
Tweet
Nesse artigo estarei falando um pouco sobre como usar o nslock para proteger sua aplicação, tornando-a mais segura.
Usando o nslock em sua aplicação para proteção contra cópias ilegais.
Passo 1 - Você deve ter o componente nslock15vb5.zip
Quem quiser me manda um e-mail que envio.
Você deverá ter, após descompactar o arquivo nslock15vb5.zip, o seguintes arquivos:
Passo 2 - Instalar o componente nslock15vb5.ocx na sua máquina e fazer o registro no Windows
Primeiro você deve copiar o arquivo nslock15vb5.ocx para o diretório \windows\system (Windows 98) ou \windows\system32 (XP)
A seguir você deve usar o programa regsvr32.exe para registrar a ocx digitando o comando regsvr32 \windows\system32\nslock14vb5.ocx no prompt do comando ou em executar. Você deverá obter uma mensagem indicando que o registro foi efetuado com sucesso.
Passo 3 - Vamos criar um projeto no VB com dois formulários: o formulário de menu da aplicação(frmMenu) e o formulário de registro(frmregistro)
A seguir vamos incluir o componente registrado na barra de ferramentas para podermos usá-lo na aplicação. Para fazer isto clique no Menu Project|Components e selecione ActiveLock 1.5 (VB5 SP3).
Crie um novo projeto StandardEXE no VB e mude o nome do formulário padrão para frmMenu e insira alguns componentes para criar um menu no formulário.
Não estou preocupado com o formulário de Menu. Ele é apenas usado para mostrar as funcionalidades do componente nslock.
Se preferir pode alterar o formulário fazendo o Menu que quiser.
Perceba que já incluímos o componente no formulário. Irá aparecer um cadeado que é o controle nslock15vb5 inserido no formulário a partir da barra de ferramentas. Clique no cadeado e configure as propriedades do componente conforme abaixo:
Abaixo estou definindo as seguintes propriedades:
Passo 4 - Incluindo código para verificação de registro no formulário principal
O formulário frmMenu é primeiro formulário a ser carregado pela aplicação logo devemos colocar código no evento Load para verificar se o programa já foi registrado. Então no evento Load do formulário insira o seguinte código:
Este código faz o seguinte: Verifica se a propriedade LastRunDate é maior que data de hoje. Se for é porque alguém mudou a data do sistema operacional, talvez para burlar a proteção do programa. Se isto ocorreu o programa irá avisar o usuário e será encerrado. A seguir o código verifica se o usuário esta registrado, se não estiver então alteramos o titulo do formulário para indicar que a versão é um demo. Se o usuário for registrado então indicamos que verão é registrada e escondemos o aviso e desabilitamos a opção de registro do programa.
No evento Click da label - Registrar o Sistema - vamos colocar o código que chama o formulário de registro.
Passo 5 - Verificando o registro e os dias que faltam para o registro
No evento Load do formulário de registro - frmregistro - vamos colocar o código que vai fazer o seguinte:
Calcular e exibir quantos dias faltam para registrar o programa
Exibir o código do software que será usado para calcular a chave de liberação:
Passo 6 - Efetuar o registro do programa
Insira o código abaixo no evento Click do botão de comando - Registrar Agora:
Este código faz o seguinte: Verifica se a chave de liberação informada é vazia; se for não permite e volta para o campo texto. Atribui a chave de liberação informada na caixa de texto à propriedade LiberationKey do componente. Verifica se a chave de liberação informada esta correta.
Passo 7 - Como calcular a chave de liberação
Para calcular a chave de liberação usamos o programa LiberationKey.
O programa vai solicitar as seguintes informações:
Após fazer isto e clicar no botão - Generate Key - você verá a chave de liberação ser informada no campo - LiberationKey. Copie e cole a chave de liberação no campo Liberação do formulário e clique em Registrar Agora. Se tudo estiver certo o programa será registrado.
Usando o nslock em sua aplicação para proteção contra cópias ilegais.
Passo 1 - Você deve ter o componente nslock15vb5.zip
Quem quiser me manda um e-mail que envio.
Você deverá ter, após descompactar o arquivo nslock15vb5.zip, o seguintes arquivos:
- nslock15vb5.ocx - a OCX que você deverá instalar e registrar para ser usada na sua aplicação VB;
- nslock15.chm - Arquivo de Help HTML compilado com a ajuda sobre o componente;
- KeyGenerator.exe - Programa para gerar a chave de liberação.
Passo 2 - Instalar o componente nslock15vb5.ocx na sua máquina e fazer o registro no Windows
Primeiro você deve copiar o arquivo nslock15vb5.ocx para o diretório \windows\system (Windows 98) ou \windows\system32 (XP)
A seguir você deve usar o programa regsvr32.exe para registrar a ocx digitando o comando regsvr32 \windows\system32\nslock14vb5.ocx no prompt do comando ou em executar. Você deverá obter uma mensagem indicando que o registro foi efetuado com sucesso.
Passo 3 - Vamos criar um projeto no VB com dois formulários: o formulário de menu da aplicação(frmMenu) e o formulário de registro(frmregistro)
A seguir vamos incluir o componente registrado na barra de ferramentas para podermos usá-lo na aplicação. Para fazer isto clique no Menu Project|Components e selecione ActiveLock 1.5 (VB5 SP3).
Crie um novo projeto StandardEXE no VB e mude o nome do formulário padrão para frmMenu e insira alguns componentes para criar um menu no formulário.
Não estou preocupado com o formulário de Menu. Ele é apenas usado para mostrar as funcionalidades do componente nslock.
Se preferir pode alterar o formulário fazendo o Menu que quiser.
Perceba que já incluímos o componente no formulário. Irá aparecer um cadeado que é o controle nslock15vb5 inserido no formulário a partir da barra de ferramentas. Clique no cadeado e configure as propriedades do componente conforme abaixo:
Abaixo estou definindo as seguintes propriedades:
Password = teste SoftwareName = Cyber_nslock LiberationKeyLenght = 16 SoftwareCodeLenght = 16 Name = alock
Passo 4 - Incluindo código para verificação de registro no formulário principal
O formulário frmMenu é primeiro formulário a ser carregado pela aplicação logo devemos colocar código no evento Load para verificar se o programa já foi registrado. Então no evento Load do formulário insira o seguinte código:
Private Sub Form_Load() If alock.LastRunDate > Now Then MsgBox \"Ocorreu uma alteração na data do sistema operacional \" _ & vbCrLf & \" O programa será encerrado.\", vbOKOnly + vbCritical, \"Erro de sistema\" End End If If Not alock.RegisteredUser Then Me.Caption = \"VERSÃO DE DEMONSTRAÇÃO\" Else Me.Caption = \"VERSÃO REGISTRADA\" lblaviso.Visible = False lblregistro(2).Enabled = False End If End Sub
Este código faz o seguinte: Verifica se a propriedade LastRunDate é maior que data de hoje. Se for é porque alguém mudou a data do sistema operacional, talvez para burlar a proteção do programa. Se isto ocorreu o programa irá avisar o usuário e será encerrado. A seguir o código verifica se o usuário esta registrado, se não estiver então alteramos o titulo do formulário para indicar que a versão é um demo. Se o usuário for registrado então indicamos que verão é registrada e escondemos o aviso e desabilitamos a opção de registro do programa.
No evento Click da label - Registrar o Sistema - vamos colocar o código que chama o formulário de registro.
Private Sub lblregistro_Click(Index As Integer) frmregistro.Show vbModal End Sub
Passo 5 - Verificando o registro e os dias que faltam para o registro
No evento Load do formulário de registro - frmregistro - vamos colocar o código que vai fazer o seguinte:
Calcular e exibir quantos dias faltam para registrar o programa
Exibir o código do software que será usado para calcular a chave de liberação:
Private Sub Form_Load() Dim diasQueFaltaParaRegistrar As Integer diasQueFaltaParaRegistrar = 0 diasQueFaltaParaRegistrar = 30 - (frmMenu.alock.UsedDays) txtdiasquefaltampararegistrar.Text = diasQueFaltaParaRegistrar If diasQueFaltaParaRegistrar <= 0 Then cmdregistrardepois.Enabled = False End If txtcodigodoprograma.Text = frmMenu.alock.SoftwareCode End Sub
Passo 6 - Efetuar o registro do programa
Insira o código abaixo no evento Click do botão de comando - Registrar Agora:
Private Sub cmdregistraragora_Click() If txtcodigoliberacao.Text = \"\" Then txtcodigoliberacao.SetFocus Exit Sub End If frmMenu.alock.LiberationKey = txtcodigoliberacao.Text If Not frmMenu.alock.RegisteredUser Then MsgBox \"Chave de LIBERAÇÃO INCORRETA\", vbOKOnly + vbCritical, \"Chave Liberação Incorreta\" txtcodigoliberacao.SetFocus Else MsgBox \"REGISTRO EFETUADO COM SUCESSO !\", vbExclamation, \"Registro OK\" frmMenu.lblaviso.Visible = False frmMenu.Caption = \"VERSÃO REGISTRADA\" frmMenu.lblregistro(2).Enabled = False Unload Me End If End Sub
Este código faz o seguinte: Verifica se a chave de liberação informada é vazia; se for não permite e volta para o campo texto. Atribui a chave de liberação informada na caixa de texto à propriedade LiberationKey do componente. Verifica se a chave de liberação informada esta correta.
Passo 7 - Como calcular a chave de liberação
Para calcular a chave de liberação usamos o programa LiberationKey.
O programa vai solicitar as seguintes informações:
- Password - Você informa a password que configurou no componente;
- LiberationKeyLenght - Informe o valor já definido;
- Software Code - Copie o código da caixa de texto - Código - do formulário - frmregistro - cole na tela do KeyGenerator.
Após fazer isto e clicar no botão - Generate Key - você verá a chave de liberação ser informada no campo - LiberationKey. Copie e cole a chave de liberação no campo Liberação do formulário e clique em Registrar Agora. Se tudo estiver certo o programa será registrado.
Enviado por xKuRt em 03/07/2009 às 07:55
Avaliação
Esta publicação ainda não foi avaliada!
A avaliação de publicações é restrita a membros cadastrados e logados no nosso site.
Comentários
Este artigo ainda não foi comentado ou o(s) comentário(s) que foi(ram) enviado(s) a ele ainda não foi(ram) publicado(s).
Envio de comentário:
Sábado, 18 de Maio de 2013
Área restrita
Leitura recomendada
Últimas publicações
Top 5 membros
- dddweb213 pts
- andersonop207 pts
- Jotah197 pts
- fbinasco165 pts
- fredbcn117 pts
Últimos membros online
- xKuRtem 18/05 às 07:46
- ricardohem 17/05 às 14:41
- Info Galaxyem 17/05 às 11:38
Últimos membros cadastrados
- Info Galaxyem 17/05
- notwenem 16/05
- ricardohem 16/05





