C# Console Application 默认使用 admin运行

class Program
    {
        static void Main(string[] args)
        {
            System.Security.Principal.WindowsIdentity identity = System.Security.Principal.WindowsIdentity.GetCurrent();
            System.Security.Principal.WindowsPrincipal principal = new System.Security.Principal.WindowsPrincipal(identity);
            //判断当前登录用户是否为管理员
            if (principal.IsInRole(System.Security.Principal.WindowsBuiltInRole.Administrator))
            {
                DataAccess test = new DataAccess();
                test.ExecuteExtract();
            }
            else
            {
                //创建启动对象
                System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo();
                startInfo.UseShellExecute = true;
                startInfo.WorkingDirectory = Environment.CurrentDirectory;
                startInfo.FileName = Assembly.GetExecutingAssembly().Location;
                //设置启动动作,确保以管理员身份运行
                startInfo.Verb = "runas";
                try
                {
                    Process.Start(startInfo);
                }
                catch
                {
                    return;
                }
            }
        }
    }
时间: 2024-10-14 10:05:39

C# Console Application 默认使用 admin运行的相关文章

win32 Application 和Win32 Console Application 的区别

Win32 Application和Win32 Console Application 都是工作在32位Windows环境的程序.  其中Win32 Application 就是普通的常见的窗口应用程序,当然有的界面做得比较个性化,比如圆形的.不规则形状的-- 它们都是所谓的GUI(Graphics User Interface图形用户接口),我们可以通过鼠标点击来完成控制.  而Win32 Console Application(win32控制台应用程序)往往是像MS-DOS窗口(XP中叫命令

Hello World 之 控制台版本(Console Application)

原文:Hello World 之 控制台版本(Console Application) 先来介绍下Hello, World   "Hello, World"程序指的是只在计算机屏幕上输出"Hello, World!"(意为"世界,你好!")这行字符串的计算机程序.一般来说,这是每一种计算机编程语言中最基本.最简单的程序,亦通常是初学者所编写的第一个程序.它还可以用来确定该语言的编译器.程序开发环境,以及运行环境是否已经安装妥当. 将输出字符串&q

【转】win32 Application和win32 Console Application

这几天在创建MFC项目时,常常遇到一下两个连接错误,例如: 1. LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main解决方法: [Project] --> [Settings] --> 选择"Link"属性页, 在Project Options中将/subsystem:console改成/subsystem:windows. 2. 还有一种经常出现的相反的情况 LIBCD.lib(win

隐藏控制台console application窗口

  如题,在windows上新建控制台应用程序的时候,怎么才能将console 黑窗口隐藏起来.   第一种方法: ::SetConsoleTitle(_T("test_exe")); HWND hwnd=::FindWindow(_T(""),_T("test_exe")); ::ShowWindow(hwnd,SW_HIDE); 不行,试了,不清楚为什么失败-. 窗口句柄抓到了,就是不明白为什么隐藏不了......⊙﹏⊙b汗 两种方法抓到的句

Eureka 的 Application Client 客户端的运行示例

上篇以一个 demo 示例介绍了 Eureka 的 Application Service 客户端角色.今天我们继续了解 Eureka 的 Application Client 客户端,以一个简单的交互示例,介绍 Application Client 是如何使用 Eureka 获取 Application Service 实例并发送请求的.        上篇<Eureka 的 Application Service 客户端的注册以及运行示例>使用了一个 Socket 服务做为 demo,本文

五种寻找 &quot;Domain Admin&quot; 运行的进程的方法

前言 当计算机加入到域后,默认将"Domain Admin"组赋予了本地系统管理员的权限.也就是说,在计算机添加到域,成为域的成员主机的过程中,系统将会自动把"Domain Admin"域组添加到本地的Administrators组中.因此,只要是Domain Admin组的成员均可访问本地计算机,而且具备"完全控制"的权限. 因此对于渗透测试人员来说,把"Domain Admin"域组添加到本地的Administrators

Fix Visual Studio 2013 Razor CSHTML Intellisense in Class Library or Console Application

https://mhusseini.wordpress.com/2015/02/05/fix-visual-studio-2013-razor-cshtml-intellisense-in-class-library-or-console-application/ I tried to use a .cshtml file and the razor syntax in a console application. I was able to build the project, but the

wcf services host in a console application

一个serviceHost多个wcf服务,宿主为console 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.ServiceModel; 5 using System.ServiceModel.Activation; 6 using System.ServiceModel.Web; 7 using System.Text; 8 9 namespace WcfRestS

Console Application

控制台应用程序模板 控制台应用程序项目模板添加创建控制台应用程序所需的项.通常将控制台应用程序设计为没有图形用户界面 (GUI),并编译成可执行文件.通过在命令提示符处键入指令来与控制台应用程序交互.作为对您的输入的响应,应用程序可能同样会在命令提示符处返回信息.这种输入和输出的直接交换使您可以利用控制台应用程序非常方便地学习编程技术,而不必额外学习 GUI 层的知识.. Console Application