Avatar billede macpain Nybegynder
16. april 2004 - 11:01 Der er 10 kommentarer og
1 løsning

Hent brugernavn!

Hvorledes kan man hente et bruger navn ind i en string, jeg har kode til at hente fra vb.net men det hjælper ikke noget, da det skal være til vb 6.0

På forhand tak

vb.net kode for eksemplets skyld

Declare Function GetUserName Lib "advapi32.dll" Alias _
            "GetUserNameA" (ByVal lpBuffer As String, _
            ByRef nSize As Integer) As Integer

Public Function GetUserName() As String
    Dim iReturn As Integer
    Dim userName As String
    userName = New String(CChar(" "), 50)
    iReturn = GetUserName(userName, 50)
    GetUserName = userName.Substring(0, userName.IndexOf(Chr(0)))
End Function
Avatar billede terry Ekspert
16. april 2004 - 11:04 #1
not sure if this works in VB but try

YourVar = Environ("username")
Avatar billede terry Ekspert
16. april 2004 - 11:06 #2
you can also try

Private Declare Function apiGetUserName Lib "advapi32.dll" Alias _
    "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long

Function fOSUserName() As String
' Returns the network login name
Dim lngLen As Long, lngX As Long
Dim strUserName As String
    strUserName = String$(254, 0)
    lngLen = 255
    lngX = apiGetUserName(strUserName, lngLen)
    If ( lngX > 0 ) Then
        fOSUserName = Left$(strUserName, lngLen - 1)
    Else
        fOSUserName = vbNullString
    End If
End Function
Avatar billede macpain Nybegynder
16. april 2004 - 11:08 #3
Vil prøve, men man kan da ikke bruge Declare i vb 6.0 eller er det bare mig?
Avatar billede iblarsen Praktikant
16. april 2004 - 11:08 #4
Option Explicit

Private Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long

Public Function bsGetUserID() As String
  Dim lAns As Long
  Dim sUser As String
 
  bsGetUserID = ""
  sUser = Space$(255)

  lAns = GetUserName(sUser, 255)

  If lAns <> 0 Then
    bsGetUserID = Left(sUser, InStr(sUser, Chr(0)) - 1)
  End If
End Function
Avatar billede terry Ekspert
16. april 2004 - 11:08 #5
actually there isnt much difference between your eample and the last I gave!
Avatar billede martin_moth Mester
16. april 2004 - 11:17 #6
Eller

Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" _
(ByVal lpBuffer As String, nSize As Long) As Long

Public Function gstrGetLoggedInUser()
    Dim sBuff As String * 25
    Dim lRet As Long: Dim char_zero
    Dim sUserName As String: Dim GetLoggedInUser As String
    'Get the user name, remove NULLs, and trim trailing spaces.
    lRet = GetUserName(sBuff, 25)
    sUserName = Trim$(Left(sBuff, InStr(sBuff, Chr(char_zero)) - 1))
    'Return empty if no name is returned.
    If sUserName = vbNullString Then GetLoggedInUser = ""
    gstrGetLoggedInUser = sUserName
End Function

'Kald:
    Im = gstrGetLoggedInUser


Der er masser af svar på eksperten - søg og du skal finde....
Avatar billede macpain Nybegynder
16. april 2004 - 11:20 #7
YourVar = Environ("username") virkede uden problemer, så let men kun hvis man ved det :-)
Avatar billede terry Ekspert
16. april 2004 - 11:22 #8
tak :o)
Avatar billede macpain Nybegynder
16. april 2004 - 11:22 #9
Men tak for svarene, men lige for at sprørge igen man kan da ikke bruge Declare i vb 6.0
Avatar billede terry Ekspert
16. april 2004 - 11:22 #10
(så let men kun hvis man ved det) thats what programming is all about :o)
Avatar billede terry Ekspert
16. april 2004 - 11:28 #11
you should be able to use DECLARE
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