MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


+6
DouglasTSL
paulocoob
Avelino Sampaio
abasilio
JPaulo
emacsabino
10 participantes

    [Resolvido]Serial do HD

    avatar
    emacsabino
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 190
    Registrado : 29/08/2011

    [Resolvido]Serial do HD Empty Serial do HD

    Mensagem  emacsabino 4/9/2012, 14:44

    Bom dia a todos! Amigos estou querendo usar o código abaixo junto com o outro que vi que é do JPaulo. Só que não tá dando certo,alguém pode me ajudar a adaptar, eu tenho que criar uma tabela para capturar o número do HD só que qual seria o nome que tenho que dá a tabela e o nome do campo? O código do JPaulo já serve para não gravar outro número de HD se lá na tabela já tiver outro
    Esse código eu uso para pegar o número de série
    Option Compare Database
    Private Declare Function GetVolumeInformation Lib "kernel32" _
    Alias "GetVolumeInformationA" (ByVal lpRootPathName As String, _
    ByVal lpVolumeNameBuffer As String, ByVal nVolumeNameSize As Long, _
    lpVolumeSerialNumber As Long, lpMaximumComponentLength As Long, _
    lpFileSystemFlags As Long, ByVal lpFileSystemNameBuffer As String, _
    ByVal nFileSystemNameSize As Long) As Long

    Public Function DriveSerialNumber(strDrive As String) As String
    'Para obter o numero de serie do HD
    'Na janela imediata digite: ?DriveSerialNumber("c")
    Dim X As Long, lngSerialNum As Long
    Dim strRoot As String
    strRoot = Left$(strDrive, 1) & ":\"
    X = GetVolumeInformation(strRoot, "", 255, lngSerialNum, 0, 0, "", 255)
    DriveSerialNumber = Hex$(lngSerialNum)
    End Function

    Ai no formulário principal ao abrir coloquei
    Call DriveSerialNumber("c")
    Feito isso, quando abro o aplicativo ele cria um monte de tabelas, eu queria saber como faria para criar uma tabela e jogar o número do HD nela pq ai depois eu poderia usar o código abaixo do JPaulo para evitar instalar em outro computador


    Dim x As String

    Dim y As Variant

    x=DLookup("SeuCampoNumeroHD","SuaTabela","SeuCampoNumeroHD")

    y= Call DriveSerialNumber("c")


    If y <> x Then

    MsgBox "Não autorizado"

    DoCmd.Quit

    Else

    Exit Sub

    End If


    Aguardo a ajuda de vocês
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11016
    Registrado : 04/11/2009

    [Resolvido]Serial do HD Empty Re: [Resolvido]Serial do HD

    Mensagem  JPaulo 4/9/2012, 15:57

    Você já tem de ter a tabela criada e o numero de serie inserido nela, para que seja validado assim;


    Private Sub Form_Open(Cancel As Integer)
    Dim x As String
    Dim y As Variant

    y = DriveSerialNumber("c")
    x = Nz(DLookup("SeuCampoNumeroHD", "SuaTabela", "SeuCampoNumeroHD='" & y & "'"), "")

    If y <> x Then

    MsgBox "Não autorizado"
    DoCmd.Quit

    Else

    Exit Sub
    End If
    End Sub



    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Serial do HD Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Serial do HD Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Serial do HD Folder_announce_new Instruções SQL como utilizar...
    avatar
    emacsabino
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 190
    Registrado : 29/08/2011

    [Resolvido]Serial do HD Empty Re: [Resolvido]Serial do HD

    Mensagem  emacsabino 4/9/2012, 16:30

    Deu certo aqui Mestre. Uma grande abraço para você e que você continue sempre assim, abençoado por Deus
    avatar
    abasilio
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4
    Registrado : 05/09/2012

    [Resolvido]Serial do HD Empty Este código não funciona em máquinas de 64 bits

    Mensagem  abasilio 5/9/2012, 09:22

    Executei esse código e ele funcionou perfeitamente no meu notebook Core i5 com Windows 7 de 64 bits, mas não funcionou num servidor com Windows Server 2008 R2 Datacenter de 64 bits, já com Service Pack 1 instalado, equipado com processador AMD Opteron 4171 HE. Pelo jeito, dá pau de cara quando ele vê a instrução chamando o "kernel32", quando surge a mensagem: "Erro de compilação: O código desse projeto deve ser atualizado para uso em sistemas de 64 bits. Analise e atualize instruções Declare e, em seguida, marque-as com o atributo PrtSafe."

    Alguém saberia como obter o serial do HD numa máquina de 64 bits?

    Obrigado pela atenção.
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3877
    Registrado : 04/04/2010

    [Resolvido]Serial do HD Empty Re: [Resolvido]Serial do HD

    Mensagem  Avelino Sampaio 5/9/2012, 09:47

    Olá

    veja neste meu artigo abaixo, como usar a condicional #IF para adaptar códigos de 32 e 64 bits. Baixe o arquivo TXT, feito pela Microsoft, com centenas de API's modificadas para atender sitemas de 64 bits

    http://www.usandoaccess.com.br/tutoriais/tuto28.asp?id=1#inicio

    Bom estudo!


    Última edição por Avelino Sampaio em 5/9/2012, 09:50, editado 1 vez(es)


    .................................................................................
    Vídeos, livros, kit MontaRibbons e acesso irrestrito ao site UsandoAcces  
    Clique AQUI e analise o custo beneficio do material oferecido.
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11016
    Registrado : 04/11/2009

    [Resolvido]Serial do HD Empty Re: [Resolvido]Serial do HD

    Mensagem  JPaulo 5/9/2012, 09:48

    Tente declarar o PtrSafe


    Private Declare PtrSafe Function GetVolumeInformation Lib "kernel32" _
    Alias "GetVolumeInformationA" (ByVal lpRootPathName As String, _
    ByVal lpVolumeNameBuffer As String, ByVal nVolumeNameSize As Long, _
    lpVolumeSerialNumber As Long, lpMaximumComponentLength As Long, _
    lpFileSystemFlags As Long, ByVal lpFileSystemNameBuffer As String, _
    ByVal nFileSystemNameSize As Long) As Long


    Deveria checkar a versão, antes das instruções com um #If VBA7 Then.


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Serial do HD Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Serial do HD Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Serial do HD Folder_announce_new Instruções SQL como utilizar...
    avatar
    abasilio
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4
    Registrado : 05/09/2012

    [Resolvido]Serial do HD Empty Re: [Resolvido]Serial do HD

    Mensagem  abasilio 5/9/2012, 10:24

    Puxa vida! Vocês são demais!!! Conseguiram resolver o meu pepino em poucos minutos, às 5h da madrugada! E consegui colocar o sistema pra funcionar num Cloud Server antes dos funcionários chegarem pra trabalhar! Valeu demais, galera! O código ficou assim:

    Código:
    Option Compare Database

    #If VBA7 Then
    Private Declare PtrSafe Function GetVolumeInformation Lib "kernel32" _
       Alias "GetVolumeInformationA" (ByVal lpRootPathName As String, _
       ByVal lpVolumeNameBuffer As String, ByVal nVolumeNameSize As Long, _
       lpVolumeSerialNumber As Long, lpMaximumComponentLength As Long, _
       lpFileSystemFlags As Long, ByVal lpFileSystemNameBuffer As String, _
       ByVal nFileSystemNameSize As Long) As Long
    #Else
    Private Declare Function GetVolumeInformation Lib "kernel32" _
       Alias "GetVolumeInformationA" (ByVal lpRootPathName As String, _
       ByVal lpVolumeNameBuffer As String, ByVal nVolumeNameSize As Long, _
       lpVolumeSerialNumber As Long, lpMaximumComponentLength As Long, _
       lpFileSystemFlags As Long, ByVal lpFileSystemNameBuffer As String, _
       ByVal nFileSystemNameSize As Long) As Long
    #End If

    Public Function FuncaoDriveSerialNumber(strDrive As String) As String
       'Para obter o numero de serie do HD
       'Na janela imediata digite: ?FuncaoDriveSerialNumber("c")
       Dim x As Long, lngSerialNum As Long
       Dim strRoot As String
       strRoot = Left$(strDrive, 1) & ":\"
       x = GetVolumeInformation(strRoot, "", 255, lngSerialNum, 0, 0, "", 255)
       FuncaoDriveSerialNumber = Hex$(lngSerialNum)
    End Function

    Parabéns pela alta qualidade do fórum! Passei a madrugada toda lendo muita coisa interessante aqui e assistindo excelentes vídeos!

    Sucesso a todos!

    Abraços!

    André Basílio.
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11016
    Registrado : 04/11/2009

    [Resolvido]Serial do HD Empty Re: [Resolvido]Serial do HD

    Mensagem  JPaulo 5/9/2012, 11:23

    Obrigado pelo retorno o fórum agradece.


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Serial do HD Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Serial do HD Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Serial do HD Folder_announce_new Instruções SQL como utilizar...
    avatar
    paulocoob
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1
    Registrado : 06/05/2011

    [Resolvido]Serial do HD Empty Re: [Resolvido]Serial do HD

    Mensagem  paulocoob 16/2/2013, 17:35

    Opa tive o mesmo problema com um comando.
    A solução de usar #If VBA7 caiu como uma luva. Ótimo post. Me ajudou muito. Obrigado
    avatar
    DouglasTSL
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1
    Registrado : 07/01/2014

    [Resolvido]Serial do HD Empty Re: [Resolvido]Serial do HD

    Mensagem  DouglasTSL 7/1/2014, 13:24

    Onde que altero esse cod, estou com o mesmo erro! obrigadoo
    avatar
    J.Silas
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 97
    Registrado : 31/05/2013

    [Resolvido]Serial do HD Empty exemplo

    Mensagem  J.Silas 7/1/2014, 14:36

    um exemplo com ajuda de exemplos do forum
    https://www.dropbox.com/s/44um9ulk91q0y8o/seral%20e%20nome%20do%20%20hd.rar

    só achei um ponto fraco caso o cliente formate o PC o serial do HD muda se alguém tiver uma solução eu agradeço.
    avatar
    cemsinformatica
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12
    Registrado : 23/11/2012

    [Resolvido]Serial do HD Empty NUMERO DO HD

    Mensagem  cemsinformatica 13/11/2015, 11:01

    Bom dia
    Retiraram do site o link do exemplo de como verificar o numero do hd
    Voce tem como disponibilizar novamente ??
    crysostomo
    crysostomo
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2676
    Registrado : 23/01/2018

    [Resolvido]Serial do HD Empty Re: [Resolvido]Serial do HD

    Mensagem  crysostomo 27/1/2018, 14:53

    sou novato aqui, e estou querendo fazer esse tipo de procedimento, estudei esse código , mas não entendi como ele vai comparar o hd, ele é feito em modulo?
    Robystanley
    Robystanley
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 117
    Registrado : 21/12/2015

    [Resolvido]Serial do HD Empty Re: [Resolvido]Serial do HD

    Mensagem  Robystanley 31/1/2018, 04:54

    Boa Noite a todos!

    J.Silas, vc pode disponibilizar novamente o Link do Exemplo por favor, pois o mesmo está inativo. Obrigado.
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11016
    Registrado : 04/11/2009

    [Resolvido]Serial do HD Empty Re: [Resolvido]Serial do HD

    Mensagem  JPaulo 31/1/2018, 11:13



    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Serial do HD Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Serial do HD Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Serial do HD Folder_announce_new Instruções SQL como utilizar...
    Robystanley
    Robystanley
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 117
    Registrado : 21/12/2015

    [Resolvido]Serial do HD Empty Re: [Resolvido]Serial do HD

    Mensagem  Robystanley 31/1/2018, 17:01

    Boa tarde!!!

    Muito obrigado JPaulo, abraços, fica com Deus!!!

    Conteúdo patrocinado


    [Resolvido]Serial do HD Empty Re: [Resolvido]Serial do HD

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 28/3/2024, 11:49