Pobranie informaji o systemie

0

Witam
pisze mały programik konsolowy w C# i zatrzymalem sie na 2 punktach:

  1. pobranie informacji o systemie
  2. pobranie roli aktualnego użytkownika

jeżeli chodzi o informacje systemowe mozna użyć klasy System.Environment ale nie daje ona interesujoących mnie informacji.

Odnośnie pkt 1 chciałbym otrzymac edycje systemu (np. home, professional)
Odnośnie pkt 2 - nie wiem jak sie za to zabrac Probowałem rozwiązać znalezionych w necie ale nie dalo rady.

Czy ktoś mógłby mi pomóc, nakreślić jakiś pseudo kod, lub powiedziec jakich napespace musze użyć?

0
  1. WMI albo WinAPI
  2. Co nazywasz rolą aktualnego użytkownika?
0

Powiedzmy: sprawdza czy ma uprawnienia admina lub nie

2

Czyli to nie jest rola, lecz przynależność do grupy Administratorzy:

WindowsIdentity user = WindowsIdentity.GetCurrent();
WindowsPrincipal principal = new WindowsPrincipal(user);
bool iAmAdmin = principal.IsInRole(WindowsBuiltInRole.Administrator);
0

Thx za odpowiedzi. Rozwiązanie z

WindowsIdentity user = WindowsIdentity.GetCurrent();
WindowsPrincipal principal = new WindowsPrincipal(user);
bool iAmAdmin = principal.IsInRole(WindowsBuiltInRole.Administrator);

pewnie zadziała na nowych systemach OS. Mi na WinXP niestety nie zadziałało. Znalazłem jednak rozwiązanie które działa na wszystkich systemach. Wrzucę kod dla potomnych gdy tylko wrócę z weekendu.

1 użytkowników online, w tym zalogowanych: 0, gości: 1