(C#)与Windows用户账户信息的获取

时间:2023-03-09 19:52:02
(C#)与Windows用户账户信息的获取
Console.WriteLine(Environment.UserName);

//计算机NetBIOS名称
Console.WriteLine(Environment.MachineName); //计算机网络域名称
Console.WriteLine(Environment.UserDomainName);

判断利用WindowsPrincipal来判断用户是否具有管理员权限,运行后用户账户控制会提示是否给予程序管理员权限。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Diagnostics;
using System.Security.Principal; namespace Mgen.TTC
{
class Program
{
static void Main()
{
WindowsPrincipal winPrincipal = new WindowsPrincipal(WindowsIdentity.GetCurrent());
bool admin = winPrincipal.IsInRole(WindowsBuiltInRole.Administrator); if (!admin)
{
if (!RunUAC(Process.GetCurrentProcess().MainModule.FileName))
{
Console.WriteLine("不是管理员");
return;
}
}
Console.WriteLine("是管理员"); } static bool RunUAC(string fileName)
{
ProcessStartInfo processInfo = new ProcessStartInfo();
processInfo.Verb = "runas";
processInfo.FileName = fileName;
try
{
Process.Start(processInfo);
return true;
}
catch (System.ComponentModel.Win32Exception)
{ }
return false;
} }
}