Wachtwoord

  • Onderwerp starter Onderwerp starter wacco
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

wacco

Gebruiker
Lid geworden
9 mrt 2006
Berichten
229
Hallo,
Ik open een form met behulp van een wachtwoord.
Dit wachtwoord wordt ingevoerd in een inputbox.
Nu begrijp ik dat het niet mogelijk is om bij het intypen van dit wachtwoord, de toets aanslagen te vervangen door ****.
Maar is het wel mogelijk om de kleur van de ingevoerde tekst te veranderen?
Als de ingevoerde tekst, wit is op een witte achtergrond....dan is dit ook niet te zien.
Ik vindt namelijk het invoeren via een inputbox een mooie oplossing, alleen het niet kunnen vebergen van de toets aanslagen is wat minder.

Gr,
Jack
 
Dat is niet mogelijk.
Gebruik een apart formuliertje om het wachtwoord in te voeren.

Tardis
 
Ok, Dank je.

Ga verder met een apart form.
Had leuk geweest, als het mogelijk was.

Zet status op opgelost.

Gr,
 
Wachtwoord invoeren in een textbox. Ga bij textbox naar Eigenschappenvenster --->Gegevens ---> Invoermasker. Instellen op Wachtwoord (******)
 
Laatst bewerkt:
Een beetje voorbarige antwoorden; het kan wel, maar je moet niet bang zijn voor een metertje code.

Code:
Option Compare Database
 
Option Explicit
'Password masked inputbox
'Allows you to hide characters entered in a VBA Inputbox.
'Code written by Daniel Klann
'March 2003
 
'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

Code:
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

Code:
Public Function InputBoxDK(Prompt, Optional Title, Optional Default, Optional XPos, _
    Optional YPos, Optional HelpFile, Optional Context) As String
    Dim lngModHwnd As Long, lngThreadID As Long
 
    lngThreadID = GetCurrentThreadId
    lngModHwnd = GetModuleHandle(vbNullString)
 
    hHook = SetWindowsHookEx(WH_CBT, AddressOf NewProc, lngModHwnd, lngThreadID)
 
    InputBoxDK = InputBox(Prompt, Title, Default, XPos, YPos, HelpFile, Context)
    UnhookWindowsHookEx hHook
 
End Function  'Hope someone can use it!

Code:
Public Function TEST()
Dim strAdminPWord As String

    strAdminPWord = InputBoxDK("Password required to proceed.", "Enter Licence Code")
    
    If strAdminPWord = "password" Then
        MsgBox "cool Password Correct ", vbOKOnly, "success"
    Else
        MsgBox ("You entered an invalid password")
       ' Exit Sub
    End If
End Function
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan