---
title: "Smidigare sätt att hämta aktuellt sid på inloggad användare?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/118557-smidigare-sätt-att-hämta-aktuellt-sid-på-inloggad-användare"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "Jesper T"
published: "2004-12-22T10:48:42.000Z"
updated: "2004-12-22T10:48:42.000Z"
replies: 0
views: 236
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/118557-smidigare-sätt-att-hämta-aktuellt-sid-på-inloggad-användare"
---

# Smidigare sätt att hämta aktuellt sid på inloggad användare?

## #1 — Jesper T, 2004-12-22T10:48Z

Detta funkar, men ser ju en aning dumt ut. Det måste väl finnas ett smidigare sätt att hämta "Sid" på current user?!

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

Public Function GetCurrentUserName() As String
Dim l As Long
Dim sUser As String

sUser = Space$(255)
l = GetUserName(sUser, 255)

'strip null terminator

If l <> 0 Then
   
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select SID from Win32_UserAccount Where Name='" & Left(sUser, InStr(sUser, Chr(0)) - 1) & "'", , 48)
    For Each objItem In colItems
        GetCurrentUserName = objItem.SID
    Next
Else
   Err.Raise Err.LastDllError, , _
     "A system call returned an error code of " _
      & Err.LastDllError
End If
End Function
```

Permalänk: https://www.webforum.nu/p/118557

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/118557-smidigare-sätt-att-hämta-aktuellt-sid-på-inloggad-användare
