Página 1 de 1
Número de série do volume do HD ?
Enviado: 29 Jun 2007 09:53
por andrelucass
Ola a todos
Estou migrando do clipper para xharbour tenho uma rotina de segurança que utiliza o número de série do volume do HD, existe uma função no xharbour ?
Atenciosamente
André Lucas Souza
Enviado: 29 Jun 2007 10:07
por andrelucass
Desculpe, mas ja encontrei
Enviado: 29 Jun 2007 14:21
por Clipper
Prezado Colega
Na minha opnião não é bom usar o número de série do volume do HD para proteção de sistema, pois, esse número pode ser facilmente modificado e duplicado, incluse tenho uma rotina em Clipper que faz isso (muda o serial do volume). Minha intenção é alerta-lo para o perigo do uso dessa técnica, além dessa forma que citei existem outras maneiras de duplicar esse número.
Até logo.
Marcelo
Enviado: 29 Jun 2007 14:26
por fladimir
Que bom colega... por favor poderia compartilhar conosco do fórum o caminho das pedras....
:)Pos
Enviado: 29 Jun 2007 14:42
por sygecom
Tche, crie um DBF com as extenção DLL lah dentro da pasta \windows\system32.....com um nome bem convencional....msdlapi.dll...pronto..grava algo com o
HB_Crypt ( Trim(cSource), Trim(cKey) ) jah era...se quiser saber qual é o windows use o OS()...
Código: Selecionar todos
vSIS=space(20)
if OS_iswin2000()
vSIS="WIN-2000"
vCAMINHO="C:\WINNT"
ELSEIF OS_isWTSCLIENT()
vSIS="WIN-TERMINAL_SERVICE"
vCAMINHO="C:\WINDOWS"
ELSE
vSIS="OUTROS_WIN"
vCAMINHO="C:\WINDOWS"
endif
Tche, isso vc pode criar um instalador.ou ir até a maquina e mandar o tal arquivo para o devido lugar....
Abraços
Leonardo Machado
Enviado: 29 Jun 2007 16:42
por Grings
Clipper escreveu:Prezado Colega
tenho uma rotina em Clipper que faz isso (muda o serial do volume).
Marcelo
Marcelo, a titulo de curiosidade, podes compartilhar essa função conosco ??
Enviado: 29 Jun 2007 17:03
por vagucs
Ao inves de checar o Windows para tentar adivinhar a pasta dela porque nao usa.
DIR_WINDOWS=GETENV("WINDOWS")
Mais pratico não?
Enviado: 29 Jun 2007 17:16
por sygecom
Tche, Vagucs....como ficria no win2000 que não tem a pasta WINDOWS ?
Abraços
Leonardo Machado
Enviado: 29 Jun 2007 18:00
por Clipper
Prezado Leonardo
No caso do Wagner ele não checa a pasta Windows e sim a variável ambiental Windows, essa variável por incrivel que pareça não varia, ela contém o nome da pasta onde o Windows está instalado e serve para qualquer versão do Windows. Vale lembrar que a função GETENV() com o uso dessa variável funciona perfeitamente com o xHarbour/Harbour, mas não funciona com Clipper nos SO com kernel NT.
Quem quiser ver o funcionamento do programa que muda pega e muda serial do volume do HD, peguem no link abaixo :
www.phrep.com.br/serial.zip
Ps. Eu sei que ele não funciona em alguam versão do Windows só não me lembro qual.
Até logo.
Marcelo
Enviado: 29 Jun 2007 18:12
por sygecom
Tche, Maarcelo...vlw pela explicação...eu nunca usei isso...gostei obrigado pela dica Vagucs...
Abraços
Leonardo Machado
Enviado: 30 Jun 2007 00:46
por Maligno
Inclusive, os nomes de muitas pastas do Windows (ex: "Meus Documentos") podem ser recuperadas por meio de funções da API ou através de uma DLL do sistema. É bem provável que haja algo a respeito na LIB padrão do XHarbour.
Enviado: 30 Jun 2007 08:26
por sygecom
Tche, sabe que nunca usei essa função ai .....é muito boa mesmo !!!
Enviado: 01 Jul 2007 10:50
por Hasse
Quem quiser ver o funcionamento do programa que muda pega e muda serial do volume do HD, peguem no link abaixo :
www.phrep.com.br/serial.zip
Ps. Eu sei que ele não funciona em alguam versão do Windows só não me lembro qual.
Não funciona totalmente no WINDOWS XP. Melhor dizendo, LER funciona mas GRAVAR não funciona.
Ao inves de checar o Windows para tentar adivinhar a pasta dela porque nao usa.
DIR_WINDOWS=GETENV("WINDOWS")
Mais pratico não?
No WINDOWS XP algumas das variáveis de ambiente:
Código: Selecionar todos
vSYSDRV1 := GETENV("HOMEDRIVE") && --> C:
vSYSDRV2 := GETENV("SystemDrive") && --> C:
vSIS1 := GETENV("windir") && --> C:\WINDOWS
vSIS2 := GETENV("SystemRoot") && --> C:\WINDOWS
vSIS32 := STRTRAN(GETENV("comSpec"),"\cmd.exe","") && --> C:\WINDOWS\SYSTEM32
vCAMPROG1 := GETENV("ProgramFiles") && --> C:\Arquivos de programas
vCAMPROG2 := GETENV("CommonProgramFiles") && --> C:\Arquivos de programas\Arquivos comuns
Bons trabalhos.
Enviado: 01 Jul 2007 12:43
por Clipper
Essa funão de ler e gravar o volume de série é do Maligno, ele deve ter melhores informações a respeito, mas eu garanto que já consegui mudar o número de série do volume, só não lembro em qual versão de SO.
Até logo.
Marcelo
Enviado: 01 Jul 2007 16:24
por Maligno
Clipper escreveu:Essa funão de ler e gravar o volume de série é do Maligno, ele deve ter melhores informações a respeito, mas eu garanto que já consegui mudar o número de série do volume, só não lembro em qual versão de SO.
Agora que você falou que me toquei. Realmente. É uma função minha feita em Assembly. Mas parece que se esqueceram de dar os créditos.

A regravação do número de série da formatação funciona em qualquer versão do Windows que não seja com kernel NT. Logo, ficam de fora: NT, 2000, XP, etc.