Login session på en NT/2K/XP.......
Jeg har tidligere lavet en loginform til et domaine, men jeg mener at den logger ind så brugeren også kan gå ind, da den åbner en session for den computer man sidder ved.Jeg vil gerne have at den logger ind med en session for det enkelte program og ikke for den computer man sidder ved?
Det jeg har lavet ser ud som følger :
Option Explicit
<!--Åbner et ADSI object-->
Dim dso As IADsOpenDSObject
Dim domain As IADsDomain
<!--Variabler der bliver sat af 3 tekstfelter-->
Dim vUser As String
Dim vPass As String
Dim vDomain As String
<!--Lukker programmet, hvis men ikke ønsker at logge ind-->
Private Sub cmdClose_Click()
Unload Me
End
End Sub
<!--Function der kontakter serveren og spørger om man må logge på-->
Private Sub cmdVerify_Click()
On Local Error GoTo ErrorHandler
vUser = txtUser.Text
vPass = txtPass.Text
vDomain = txtDomain.Text
Set dso = GetObject("WinNT:")
Set domain = dso.OpenDSObject("WinNT://" & vDomain & "", "" & vUser & "", "" & vPass & "", ADS_SECURE_AUTHENTICATION)
Exit Sub
<!--ErrorHandler der retunere en msgbox hvis man ikke har adgang-->
ErrorHandler:
If Err = -2147023570 Then MsgBox "Unknown User or Bad Password", , "Login Failure"
If Err = -2147467259 Then MsgBox "Unknown Domain", , "Login Failure"
Exit Sub
End Sub
<!--De følgende er kode der gør teksten er markeret automatisk hvis man tabulere mellem felterne-->
Private Sub txtUser_GotFocus()
txtUser.SelStart = 0
txtUser.SelLength = Len(txtUser.Text)
End Sub
Private Sub txtPass_GotFocus()
txtPass.SelStart = 0
txtPass.SelLength = Len(txtPass.Text)
End Sub
Private Sub txtDomain_GotFocus()
txtDomain.SelStart = 0
txtDomain.SelLength = Len(txtDomain.Text)
End Sub
Der er 400 points til den der kan besvare begge spg. (200 i dette og 200 mere i et nyt spg, der kommer når der er svaret).
/Tubber
