2013-08-22 5 views
0

기본 응용 프로그램 화면을 열기 전에 현재 사용자 권한을 얻어야합니다. 관리자 사용자 (독립 실행 형 PC) 만 응용 프로그램을 사용하고 있음을 확인하고 싶습니다. 다음 코드를 시도했지만 Windows 7에서는 작동하지 않습니다 (XP 및 다른 컴퓨터에서는 아직 시도되지 않았습니다).현재 로그인 Windows 사용자 권한 얻기

Dim identity = WindowsIdentity.GetCurrent() 
Dim principal = New WindowsPrincipal(identity) 
Dim isElevated As Boolean = principal.IsInRole(WindowsBuiltInRole.Administrator) 
Return isElevated 

참조 할 필요가있는 다른 기능 클래스가 있습니까? 그것은 오랜 시간이었고 나는 무엇이 잘못되었는지 확신하지 못했습니다. 도와주세요. Windows XP, Windows Vista, Windows 7 및 가능하면 Windows 8에서도 작동해야합니다.

답변

0

아래 코드는 Windows7에서 작동합니다. 너 한번 해봐 줄래? 감사합니다

public static bool IsAdminUser() 
{ 
    bool isAdmin = false; 
    AppDomain.CurrentDomain.SetPrincipalPolicy(PrincipalPolicy.WindowsPrincipal); 
    WindowsPrincipal principal = (WindowsPrincipal)System.Threading.Thread.CurrentPrincipal; 
    WindowsIdentity identity = (WindowsIdentity)principal.Identity; 
    isAdmin = principal.IsInRole(WindowsBuiltInRole.Administrator); 
    return isAdmin; 
} 
+0

나는 이것을 시도했지만 VB.NET에서는 작동하지 않았습니다. 기본 관리자 또는 관리자로 승격 된 사용자로 작동하고 있습니까? – SOAMad

관련 문제