• C#如何调用以管理员身份运行的cmd命令提示符


    windows自从vista、win7、win8/8.1以及win10以来,命令行提示符分为两种模式,一种是普通用户模式,一种的管理员模式,很多情况下,我们的程序需要在命令提示符(管理员身份)的状况下运行,但是c#调用的时候一般都是普通用户的cmd命令,虽然可以通过右键 - 以管理员身份运行该软件,但是我们用c#开发的软件,不能告诉每一个用户让他们都以管理员身份运行吧?今天亦是美网络就给大家介绍一个简单的方法,轻松实现c#调用以管理员身份运行的命令提示符。

    笔者的环境:win8.1专业版 64位 + visualstudio Ultimate 2013,开发环境选择的是.net framework4.0,(为了更好的兼容win7及以前的版本),同样适用于VS2015。

    在开始之前,笔者也在网上苦苦搜寻了一些办法,但是使用较多的是是给cmd.exe指定运行目录:c:windowssystem32cmd.exe,其实网上已经有人说了这种办法行不通,亦是美网络也亲自试验过,这种方法确实行不通,起码在笔者的环境下没有成功,那么我们采用下面的办法。

    其实要以管理员的身份运行cmd命令提示符,我们只需要让c#开发的程序自身以管理员身份运行就可以了,我们打开visual studio - 解决方案资源管理器 -右键项目名称 - 属性 ,弹出下面的窗口:

    点击选择左侧的“安全性”,我们在“启用ClickOnce安全设置”前面打勾,然后再返回解决方案资源管理器界面,这时,在项目名称里的“Properties”下面会多出一个“app.manifest”的文件,如下图所示:

    我们点击选中它,看左侧窗口中代码,如下:

    我们找到代码段: <requestedExecutionLevel level="asInvoker" uiAccess="false" />,将其改为:<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />

    改过后,不要急于重新编译生成,我们重新返回上图那个界面,将“启用ClickOnce安全设置”前面的勾去掉后再编译运行,不然程序会报错无法运行。

    按照上面的步骤设置以后,C#开发出来的程序就会自动以管理员身份的运行了,当然,它里面的命令提示符cmd也自动以管理员身份运行了。

    出处:http://www.yishimei.cn/network/296.html

  • 相关阅读:
    pycharm 代码块缩进、左移
    os.popen(cmd) .read() 获取执行后的结果且带有换行符
    数据分析基础路线了解
    Jupyter中python3之numpy练习
    Mysql数据库操作命令行小结
    Mysql配置主从同步的基本步骤
    百度翻译爬虫-Web版(自动生成sign)
    windows中的常用Dos命令
    Cookie安全隐患DOM演示
    bash漏洞技术层面分析(cgi-bin)
  • 原文地址:https://www.cnblogs.com/mq0036/p/10585868.html
Copyright © 2020-2023  润新知