Avatar billede acp Nybegynder
29. juni 2002 - 06:41 Der er 15 kommentarer og
2 løsninger

Få Domain data ud til Labels

Hej alle

Jeg prøver at få nogle login scripts til at virke, så alle brugere bruger samme exe fil, men at der står i start menuen,

eks. "velkommen til Mit Domain"
nedenunder skal der står username eller rigtigt navn i en ny label men kan ikke få det til at virke...

det er ligesom når man laver bat filer til mange brugere der bruger man %username%, men hvordan er det i Visual Basic ????

Anders
Avatar billede tubber Juniormester
29. juni 2002 - 10:02 #1
tror du skal kigge lidt på noget ADsI :O)

Er ikke det vilde inde i det, har dog lavet et domain login, men det er jo ikke lige det du søger, men prøv at kigge her.....

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/netdir/adsi/iads.asp

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/netdir/adsi/iadsgroup_property_methods.asp

Du skal downloade ADSI 2.5:
http://www.microsoft.com/NTWorkstation/downloads/Other/ADSI25.asp
Avatar billede itbjarne Nybegynder
29. juni 2002 - 11:31 #2
Hej
Kender ikke lige ADsI så kan ikke kommentere, men fra VB kan du anvende Environ("USERNAME") for at læse en system variabel - USERNAME skulle så være aktuel brugernavn på NT niveau.
Avatar billede tubber Juniormester
29. juni 2002 - 13:09 #3
itbjarne>
Det er vel på den maskine man arbejder eller hvad ?
Med ADsI kan man få oplysningerne fra domain controleren......

ved ikke om det har interesse, men paster lige koden for den loginting jeg har lavet.....

Option Explicit
Dim dso As IADsOpenDSObject
Dim domain As IADsDomain
Dim vUser As String
Dim vPass As String
Dim vDomain As String
Private Sub cmdClose_Click()
    Unload Me
    End
End Sub
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:
    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
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
Avatar billede tubber Juniormester
29. juni 2002 - 13:10 #4
IADsDomain kan vist bruges til at hente brugernavne med
GetMembers og GetUser tror jeg de hedder.....
Avatar billede acp Nybegynder
29. juni 2002 - 17:10 #5
Hej Igen,

Hmm hvis jeg bare kan fp kommandoen til at label1 Viser enten brugerens navn eller username, så ville jeg være meget glad

Anders
Avatar billede itbjarne Nybegynder
29. juni 2002 - 18:20 #6
label1.Caption = Environ("USERNAME")
(Er det dette du mener ?)
Avatar billede tubber Juniormester
29. juni 2002 - 19:08 #7
Er det bruger på din puter eller er det på en domaincontroler du er tilknyttet ?

For det er det nemmeste som itbjarne skriver hvis det kun er på din maskine.....
Avatar billede acp Nybegynder
29. juni 2002 - 20:47 #8
Exe filen ligger på DC, og vil startet når bruger logger ind, med ITBJARNE får jeg nu Username men ville gerne have det navn som brugeren er oprettet med på DC :)
Avatar billede tubber Juniormester
30. juni 2002 - 08:16 #9
Skal du have fat i domain controleren mener jeg du skal bruge adsi..
Altså IADsDomain getmembers......
Avatar billede tubber Juniormester
30. juni 2002 - 08:17 #10
Du kan gøre det du bruger den loginting jeg har lavet, og så laver en global variabel og så sætter den = med det username brugeren indtaster for at starte programmet, og så henter den ind i din label.caption når din mainform er loadet......
Avatar billede webcon Nybegynder
02. juli 2002 - 12:39 #11
Er lige med på en lyttet.

Skal man ikke sætte en reference til et eller andet ??

/webcon
Avatar billede tubber Juniormester
02. juli 2002 - 12:56 #12
Chekker lige når jeg kommer hjem, men så skal jeg nok svare :O)
Avatar billede tubber Juniormester
02. juli 2002 - 15:23 #13
Du skal bruge den reference der hedder Active DS Type Library.....
Hvis domain controleren er en unix, skal der hvor der står winnt i koden skiftes ud med UNIX.....

/Tubber
Avatar billede acp Nybegynder
04. juli 2002 - 20:44 #14
Tubber >> Gider du ikke lige og svare så deler i pointne i mellem jer...

Løsning blev, at jeg konverte der Username fra domain controlleren og mellem exchange serveren, derved kan jeg få deres rigtige navn.

Anders
Avatar billede tubber Juniormester
05. juli 2002 - 07:59 #15
Ok :O)

smart nok
Avatar billede tubber Juniormester
07. juli 2002 - 12:57 #16
acp: lige lidt nysgerrig, brugte du det adsi ?
så vil jeg nemlig gerne se det kode du lavede :)
Avatar billede acp Nybegynder
08. juli 2002 - 08:54 #17
Smider den lige op når jeg engang kommer hjem... sidder i england hele denne uge :)

Anderrs
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester