(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;
        }
 
 
    }
}


 
























 

posted @ 2013-07-08 15:25  爱生活,爱编程  阅读(1078)  评论(0编辑  收藏  举报