Ir ao conteúdo

Serial de HD


derek wildstar

Posts recomendados

Postado

Olá Pessoal do CDH

Sei que já deve existir algumas informações sobre isso aqui no forum, mas acredito que estas estejam desatualizadas.

O fato que é já procurei em muitos lugares uma solução mas não achei uma que fosse unificada, isto é, que funcionem em Win95, Win98, WinME, Win2K, WinXP e provavelmente WinVista

Preciso de um algoritmo ou função de API (disponível nos S.O. citados acima) que me retorne, simplesmente o serial de um HD baseado na sua letra de unidade, tipo, algo como:


Serial_C := GetSerial('C:');
Serial_D := GetSerial('D:');
Serial_E := GetSerial('E:');

Com o detalhe que 'C:' e 'D:' são volumes (partições) de um mesmo HD e portanto deve ser retornado o mesmo serial para chamada da função com ambas as letras.

Obrigado a todos

PS.: aceito algoritmos em qualquer linguagem, mas preferencialmente Delphi ou C.

Postado

Acho que não expliquei direito. Eu quero um algoritmo que retorne o Serial Fisico do HD, não o serial do volume. O serial do volume, obtido com GetVolumeInformation é alterado toda vez que se formata o HD.

O que eu quero é uma rotina que me retorne o serial físico do HD baseado na letra do volume.

Postado

No máximo usando device driver para consultar os dados do S.M.A.R.T., já que nos Windows posteriores aos 9x você não vai conseguir acesso ao hardware. Não imagino se funciona em Vista...

Veja aqui

Postado

O tópico la da Delpho3000 é muito bom, mas tenho algumas duvidas...

Será que realmente funcionará em Win95, 98 e ME?

Lembro que uma vez, mesmo copiando o SMARTVSD.VXD no lugar correto não deu certo..

E outra. E se meu HD for SATA?

Postado

SATA tem SMART também, então não acredito que não tem muito grilo. Não cheguei a ver isso funcionar com o SATA para te dar certeza...

Você vai ter problemas com SCSI e RAID (mesmo IDE ou SATA). Pior, se o SMART estiver desabilitado na BIOS, daí você vai ter problema mesmo com IDE.

Esse negócio do 98 tem que ficar esperto que o driver deve ficar no Windows\System\Iosubsys (kb)

Enfim, parece não tem muita mágica de funcionar em 100% das situações. Por isso que é legal usar um conjunto de informações, tipo MAC, CPUID (também desabilitável), e por aí vai. Se você pegar um micro de um paranóico, pode crer que o MAC vai ser forçado para outro valor, o CPUID e SMART desabilidatos, e poraí a fora :)

JP

Postado

olha, temos variantes demais, hd com crc e o usuario troca de unidade, versao de os, sata, raid e um zilhao de coisas que ja sabemos....

talvez isto te ajude:

coloque em seu sistema o seguinte, de 30 em 30 dias o sistema gerará uma senha com base aleatoria formulada por voce ( toda vez que entrar no sistema sera uma senha unica, nunca se repetira, poderia ser com base em data e hora ( segundos ) ), esta senha pedira contra-senha durante 10 dias, se nao digitar, o sistema entra e avisa que o sistema vai parar daqui a 10 dias, se digitar ele libera e so pede de novo dai a 30 dias de novo.

esta contra-senha tambem é variavel formulada por voce, a partir da senha voce aplica uma formula que te dara a contra senha, ou seja, so voce vai saber a mesma.

a partir dai voce poderá liberar a contra senha ao usuario se ele estiver em dia com voce! voce so libera esta contra senha uma unica vez por mes ao usuario.

lembrando que a senha nunca sera a mesma, mesmo que ele abra o sistema as 10.00hs e depois as 10.01hs, as senhas serao diferentes. logo, contra-senhas diferentes tambem.

se ele pedir 2 ou mais vezes abra o olho, ele pode estar com seu sistema em dois lugares. dai voce passa contra senha errada, e depois de algumas tentativas voce diz que tem que ir ate la para tentar resolver o problema. se o fato continuar acontecendo no outro mes, pronto, c pegou o cara.

abraço.

Postado
SATA tem SMART também, então não acredito que não tem muito grilo. Não cheguei a ver isso funcionar com o SATA para te dar certeza...

Você vai ter problemas com SCSI e RAID (mesmo IDE ou SATA). Pior, se o SMART estiver desabilitado na BIOS, daí você vai ter problema mesmo com IDE.

Esse negócio do 98 tem que ficar esperto que o driver deve ficar no Windows\System\Iosubsys (kb)

Enfim, parece não tem muita mágica de funcionar em 100% das situações. Por isso que é legal usar um conjunto de informações, tipo MAC, CPUID (também desabilitável), e por aí vai. Se você pegar um micro de um paranóico, pode crer que o MAC vai ser forçado para outro valor, o CPUID e SMART desabilidatos, e poraí a fora :)

JP

O problema de estar ou não com SMART ativado não tem problema, pois o sistema so funcionaria se o SMART estivesse ativado. HDs novos, creio eu, já tenham esta característica, o que não me impediria de usar o SMART.

Usar MAC não é bom pois ele pode ser mudado e eu não posso garantir que o usuario tenha placa de rede.

O CPUID é uma característica que só exisitu no Pentium 3 e por motivo de privacidade foi removido do mesmo ficando apanas a instrução pra compatibilidade retrógrada.

Acho que a solução é usar SMART mesmo...

Postado
olha, temos variantes demais, hd com crc e o usuario troca de unidade, versao de os, sata, raid e um zilhao de coisas que ja sabemos....

talvez isto te ajude:

coloque em seu sistema o seguinte, de 30 em 30 dias o sistema gerará uma senha com base aleatoria formulada por voce ( toda vez que entrar no sistema sera uma senha unica, nunca se repetira, poderia ser com base em data e hora ( segundos ) ), esta senha pedira contra-senha durante 10 dias, se nao digitar, o sistema entra e avisa que o sistema vai parar daqui a 10 dias, se digitar ele libera e so pede de novo dai a 30 dias de novo.

esta contra-senha tambem é variavel formulada por voce, a partir da senha voce aplica uma formula que te dara a contra senha, ou seja, so voce vai saber a mesma.

a partir dai voce poderá liberar a contra senha ao usuario se ele estiver em dia com voce! voce so libera esta contra senha uma unica vez por mes ao usuario.

lembrando que a senha nunca sera a mesma, mesmo que ele abra o sistema as 10.00hs e depois as 10.01hs, as senhas serao diferentes. logo, contra-senhas diferentes tambem.

se ele pedir 2 ou mais vezes abra o olho, ele pode estar com seu sistema em dois lugares. dai voce passa contra senha errada, e depois de algumas tentativas voce diz que tem que ir ate la para tentar resolver o problema. se o fato continuar acontecendo no outro mes, pronto, c pegou o cara.

abraço.

A ideia é bem interessante, mas eu não gostaria de ficar pedindo senhas para os usuários. O bom de usar SMART seria isso... Eu executaria uma aplicação no pc do cliente que geraria um hash do PC dele baseado no seus HDS e de posse dessa informação eu geraria uma arquivo que minha aplicação sempre leria e compararia em tempo de execução com o a mesmo informação local.

Postado

cara, a muito buscava esta solucao que voce pretende, nao consegui e acabei achando melhor ter controle sobre meus clientes, uma vez que nao vendo, so cobro mensalidade, o cara achou meu suporte ruim ele cancela a qualquer hora, é so nao pagar. em 30 dias para de funcionar. isto garante eficiencia ao meu programa. alem de que ele pode instalar meu sistema em qualquer lugar, desde que so use uma copia no servidor de cada vez!

abraço!

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...