L'inserimento della password avviene sempre in modo che i caratteri imputati non siano visibili e siano nascosti da caratteria quali ad esempio l'asterisco, la dieresi, la chiocciola oppure da pallini.
Il vbs nativo per registrare informazioni dall'utente utilizza la InputBox. Questa funzione visulizza un Popup che contiene un'area per digitare il Testo (TextBox). Questa funzione però non ha un parametro che indica che il testo deve essere "criptato". Per ovviare a questo è possibile simulare la InputBox creando una DialogBox contenente una TextBox che conterrà un testo nascosto.
La DialogBox che andiamo a creare sarà fatta tramite la InternetExplorer Application. Sarà quindi un browser che conterrà un'area di Input di tipo Password.
Questo codice è stato reperito in rete e NON è di mia creazione. Eccolo qui:
'*************************************************
'********************** M A I N ********************
'*************************************************
Dim strPW
strPW = GetPassword("Inserire la Password: ")
msgbox "La tua password è: " & strPW
'*************************************************
'************** F I N E M A I N ********************
'*************************************************
'*************************************************
'********** Funzione GetPassword ************
'*************************************************
Function GetPassword( myPrompt )
' This function uses Internet Explorer to
' create a dialog and prompt for a password.
'
' Argument: [string] prompt text, e.g. "Please enter password:"
' Returns: [string] the password typed in the dialog screen
'
' Written by Rob van der Woude
' http://www.robvanderwoude.com
' Error handling code written by Denis St-Pierre
Dim objIE
' Create an IE object
Set objIE = CreateObject( "InternetExplorer.Application" )
' specify some of the IE window's settings
objIE.Navigate "about:blank"
objIE.Document.Title = "Form per inserimento Password" & String( 100, vbTab )
objIE.ToolBar = False
objIE.Resizable = False
objIE.StatusBar = False
objIE.Width = 320
objIE.Height = 180
' Center the dialog window on the screen
With objIE.Document.ParentWindow.Screen
objIE.Left = (.AvailWidth - objIE.Width ) \ 2
objIE.Top = (.Availheight - objIE.Height) \ 2
End With
' Wait till IE is ready
Do While objIE.Busy
WScript.Sleep 200
Loop
' Insert the HTML code to prompt for a password
objIE.Document.Body.InnerHTML = "<DIV ALIGN=""center""><P>" & myPrompt _
& "</P>" & vbCrLf _
& "<P><INPUT TYPE=""password"" SIZE=""20"" " _
& "ID=""Password""></P>" & vbCrLf _
& "<P><INPUT TYPE=""hidden"" ID=""OK"" " _
& "NAME=""OK"" VALUE=""0"">" _
& "<INPUT TYPE=""submit"" VALUE="" OK "" " _
& "OnClick=""VBScript:OK.Value=1""></P></DIV>"
' Make the window visible
objIE.Visible = True
objIE.Document.All.Password.Focus
' Wait till the OK button has been clicked
On Error Resume Next
Do While objIE.Document.All.OK.Value = 0
WScript.Sleep 200
' Error handling code by Denis St-Pierre
If Err Then 'user clicked red X (or alt-F4) to close IE window
IELogin = Array( "", "" )
objIE.Quit
Set objIE = Nothing
Exit Function
End if
Loop
On Error Goto 0
' Read the password from the dialog window
GetPassword = objIE.Document.All.Password.Value
' Close and release the object
objIE.Quit
Set objIE = Nothing
End Function
'*************************************************
______________________________________________________________________