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


3 participantes

    [Resolvido]Pedir senha ao abrir um formulário

    avatar
    GilsonSoares
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 98
    Registrado : 18/07/2015

    [Resolvido]Pedir senha ao abrir um formulário Empty [Resolvido]Pedir senha ao abrir um formulário

    Mensagem  GilsonSoares 29/9/2015, 11:49

    Bom dia Galera


    Estava procurando sobre como fazer para o access pedir uma senha ao abrir um formulário
    e vi um exemplo do nosso amigo JPaulo e é exatamente o que preciso, só que ao invés de abrir a guia, quebro que ele abra o formuláio... segue o exemplo do JPaulo:

    A senha para entrar na Aba 2 é "123" e apenas terá 3 possibilidades de erro;

    http://dl.dropboxusercontent.com/u/771097/Password_na_Aba.zip


    me ajudem com esse ou outro modo de colocar senha no formulário?

    Quero agradecer a este forum que tanto tem me ajudado...

    Grande Abraço
    gilberlanio
    gilberlanio
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 798
    Registrado : 30/08/2010

    [Resolvido]Pedir senha ao abrir um formulário Empty Re: [Resolvido]Pedir senha ao abrir um formulário

    Mensagem  gilberlanio 29/9/2015, 12:26

    Cole esse código no evento ao abrir do seu formulário:

    Dim VarSenha
    VarSenha = InputBox("Digete a senha para abrir o formulário", "Senha requerida")

    'A mensagem acima entre os parênteses pode ser alterada
    If VarSenha = "123" Then 'este valor entre parenteses é a senha
    Else
    MsgBox "Senha incorreta", vbCritical, "Senha incorreta"
    Cancel = -1
    'aqui a mensagem de senha incorreta. Pode alterar
    End If
    avatar
    GilsonSoares
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 98
    Registrado : 18/07/2015

    [Resolvido]Pedir senha ao abrir um formulário Empty Re: [Resolvido]Pedir senha ao abrir um formulário

    Mensagem  GilsonSoares 29/9/2015, 13:09

    Obrigado Gilberlanio!


    Funcionou perfeito!

    só está aparecendo os caracteres ao invés de asteriscos


    tem como mudar para aparecer os asteriscos?

    gilberlanio
    gilberlanio
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 798
    Registrado : 30/08/2010

    [Resolvido]Pedir senha ao abrir um formulário Empty Re: [Resolvido]Pedir senha ao abrir um formulário

    Mensagem  gilberlanio 29/9/2015, 15:13

    cópie esse código em um módulo e salve com o nome de "Senha_inputboxdk"

    Código:
    Option Compare Database

    '////////////////////////////////////////////////////////////////////
    'Password masked inputbox
    'Allows you to hide characters entered in a VBA Inputbox.
    '
    'Code written by Daniel Klann
    'http://www.danielklann.com/
    'March 2003

    '// Kindly permitted to be amended
    '// Amended by Ivan F Moala
    '// http://www.xcelfiles.com
    '// April 2003
    '// Works for Xl2000+ due the AddressOf Operator
    '////////////////////////////////////////////////////////////////////

    'API functions to be used
    Private Declare Function CallNextHookEx Lib "user32" (ByVal hHook As Long, _
    ByVal ncode As Long, ByVal wParam As Long, lParam As Any) As Long

    Private Declare Function GetModuleHandle Lib "kernel32" Alias "GetModuleHandleA" ( _
    ByVal lpModuleName As String) As Long

    Private Declare Function SetWindowsHookEx Lib "user32" Alias "SetWindowsHookExA" ( _
    ByVal idHook As Long, ByVal lpfn As Long, ByVal hmod As Long, ByVal dwThreadId As Long) _
    As Long

    Private Declare Function UnhookWindowsHookEx Lib "user32" (ByVal hHook As Long) As Long

    Private Declare Function SendDlgItemMessage Lib "user32" Alias "SendDlgItemMessageA" ( _
    ByVal hDlg As Long, ByVal nIDDlgItem As Long, ByVal wMsg As Long, ByVal wParam As Long, _
    ByVal lParam As Long) As Long

    Private Declare Function GetClassName Lib "user32" Alias "GetClassNameA" (ByVal hwnd As Long, _
    ByVal lpClassName As String, ByVal nMaxCount As Long) As Long

    Private Declare Function GetCurrentThreadId Lib "kernel32" () As Long

    'Constants to be used in our API functions
    Private Const EM_SETPASSWORDCHAR = &HCC
    Private Const WH_CBT = 5
    Private Const HCBT_ACTIVATE = 5
    Private Const HC_ACTION = 0

    Private hHook As Long

    Public Function NewProc(ByVal lngCode As Long, ByVal wParam As Long, ByVal lParam As Long) As Long

    Dim RetVal
    Dim strClassName As String, lngBuffer As Long

    If lngCode < HC_ACTION Then
    NewProc = CallNextHookEx(hHook, lngCode, wParam, lParam)
    Exit Function
    End If

    strClassName = String$(256, " ")
    lngBuffer = 255

    If lngCode = HCBT_ACTIVATE Then 'A window has been activated
    RetVal = GetClassName(wParam, strClassName, lngBuffer)
    If Left$(strClassName, RetVal) = "#32770" Then 'Class name of the Inputbox
    'This changes the edit control so that it display the password character *.
    'You can change the Asc("*") as you please.
    SendDlgItemMessage wParam, &H1324, EM_SETPASSWORDCHAR, Asc("*"), &H0
    End If
    End If

    'This line will ensure that any other hooks that may be in place are
    'called correctly.
    CallNextHookEx hHook, lngCode, wParam, lParam

    End Function

    '// Make it public = avail to ALL Modules
    '// Lets simulate the VBA Input Function
    Public Function InputBoxDK(Prompt As String, Optional Title As String, Optional Default As String, _
    Optional Xpos As Long, Optional Ypos As Long, Optional Helpfile As String, _
    Optional Context As Long) As String

    Dim lngModHwnd As Long, lngThreadID As Long

    '// Lets handle any Errors JIC! due to HookProc> App hang!
    On Error GoTo ExitProperly
    lngThreadID = GetCurrentThreadId
    lngModHwnd = GetModuleHandle(vbNullString)

    hHook = SetWindowsHookEx(WH_CBT, AddressOf NewProc, lngModHwnd, lngThreadID)
    If Xpos Then
    InputBoxDK = InputBox(Prompt, Title, Default, Xpos, Ypos, Helpfile, Context)
    Else
    InputBoxDK = InputBox(Prompt, Title, Default, , , Helpfile, Context)
    End If

    ExitProperly:
    UnhookWindowsHookEx hHook

    End Function


    Depois cole no evento ao abrir do formulário:

    Código:
    Dim UsrResposta
    UsrResposta= InputBoxDK("Digete a senha para abrir o formulário", "Senha requerida")

    'A mensagem acima entre os parênteses pode ser alterada
    If UsrResposta= "123" Then 'este valor entre parenteses é a senha
    Else
    MsgBox "Senha incorreta", vbCritical, "Senha incorreta"
    Cancel = -1
    'aqui a mensagem de senha incorreta. Pode alterar
    End If


    Última edição por gilberlanio em 29/9/2015, 17:33, editado 1 vez(es)
    avatar
    GilsonSoares
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 98
    Registrado : 18/07/2015

    [Resolvido]Pedir senha ao abrir um formulário Empty Re: [Resolvido]Pedir senha ao abrir um formulário

    Mensagem  GilsonSoares 29/9/2015, 16:05

    Gilberlanio, Não deu certo Crying or Very sad


    ainda mostra a senha
    gilberlanio
    gilberlanio
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 798
    Registrado : 30/08/2010

    [Resolvido]Pedir senha ao abrir um formulário Empty Re: [Resolvido]Pedir senha ao abrir um formulário

    Mensagem  gilberlanio 29/9/2015, 17:34

    Copia e cole novamente o código no evento ao abrir do formulário está com um erro mas corrigi.
    gilberlanio
    gilberlanio
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 798
    Registrado : 30/08/2010

    [Resolvido]Pedir senha ao abrir um formulário Empty Re: [Resolvido]Pedir senha ao abrir um formulário

    Mensagem  gilberlanio 29/9/2015, 17:39

    avatar
    GilsonSoares
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 98
    Registrado : 18/07/2015

    [Resolvido]Pedir senha ao abrir um formulário Empty Re: [Resolvido]Pedir senha ao abrir um formulário

    Mensagem  GilsonSoares 30/9/2015, 01:39

    Obrigado Gilberlanio!


    Deu tudo certinho com o novo cód!

    Valew por mais essa!


    Gilson
    gilberlanio
    gilberlanio
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 798
    Registrado : 30/08/2010

    [Resolvido]Pedir senha ao abrir um formulário Empty Re: [Resolvido]Pedir senha ao abrir um formulário

    Mensagem  gilberlanio 30/9/2015, 01:56

    Obrigado pelo retorno.
    avatar
    GilsonSoares
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 98
    Registrado : 18/07/2015

    [Resolvido]Pedir senha ao abrir um formulário Empty Re: [Resolvido]Pedir senha ao abrir um formulário

    Mensagem  GilsonSoares 30/9/2015, 02:03

    Gilberlanio, sei que o tópico foi resolvido mas, to preocupado com aquele lance de digitar o código e preencher os demais campos No

    vc me salva de todos rs


    se achar melhor nao falar aqui, o outro tópico está aberto ainda!


    Abraços,

    Gilson
    avatar
    carlosbell10
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 188
    Registrado : 04/10/2016

    [Resolvido]Pedir senha ao abrir um formulário Empty olá , vc ainda tem o novo codigo ?

    Mensagem  carlosbell10 22/7/2021, 02:57

    olá , vc ainda tem o novo codigo ?

    Conteúdo patrocinado


    [Resolvido]Pedir senha ao abrir um formulário Empty Re: [Resolvido]Pedir senha ao abrir um formulário

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 29/3/2024, 04:33