Este ejemplo indica como guardar una contraseña en el registro, pero cifrada para evitar curiosos. No hace ninguna llamada a la API, todo puro código VB


Código:
Option Explicit


Private Sub Form_Load()
 Command1.Caption = "Gardar Clave"
 Command2.Caption = "Recuperar Clave"
 Text1 = "esta es tu contraseña"
 Text1.PasswordChar = "*"
End Sub


Private Sub Command1_Click()
 Dim sCar As String
 Dim i As Integer
 ' codificar la contraseña (una forma como otra cualquiera)
 For i = 1 To Len(Text1)
 sCar = sCar & Chr((Asc(Mid(Text1, i, 1)) + 15) Mod 256)
 Next i
 ' guardar la contraseña cifrada en el registro
 SaveSetting App.Title, "Datos", "PW", sCar
 ' La guarda en: -> HKEY_CURRENT_USER\Software\VB and VBA Program Settings\<MiApp>\Datos
 MsgBox "Contraseña registrada"
 Text1 = ""
End Sub


Private Sub Command2_Click()
 Dim sCar As String, pw As String
 Dim i As Integer
 ' leer la contraseña del registro
 sCar = GetSetting(App.Title, "Datos", "PW")
 ' descifrar la contraseña
 For i = 1 To Len(sCar)
 pw = pw & Chr((Asc(Mid(sCar, i, 1)) + (256 - 15)) Mod 256)
 Next i
 MsgBox "La contraseña es: " & pw
 Text1 = pw
End Sub

El código del botón2 es el que se pondría en el Form de inicio, comparando el dato introducido por el usuario con el guardado en el registro.


Saludos