最近遇到个棘手的问题,服务器远程连不上,但是ftp可以,可能远程连接的服务挂了或者防火墙入站规则有点问题,想要重启,得找机房工作人员,还是挺麻烦的

想了想可以上传个执行cmd命令的东西,然后远程访问触发,执行命令添加一条入站规则,但是呢一般的命令行又不够权限,只能以管理员权限打开才能执行这个

命令,往入站规则里面先添加一条规则:【netsh advfirewall firewall add rule name=\"allow 24897\" protocol=TCP dir=in localport=24897 action=allow】,网上找

了半天也没找到,好不容易找着了,赶紧写篇文记下来备用,代码如下

   //如果iis有足够的权限是ok 的
public static void ExecuteCommandAsAdmin()
{
System.Diagnostics.Process process = new System.Diagnostics.Process();
System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo();
startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
startInfo.FileName = "cmd.exe";
startInfo.Arguments = "/C netsh advfirewall firewall add rule name=\"allow 24897\" protocol=TCP dir=in localport=24897 action=allow&exit";
startInfo.Verb = "runas";
process.StartInfo = startInfo;
process.Start();
process.WaitForExit();
process.Close();
}

这段代码执行成功的前提是iis够权限,不然会出现拒绝访问错误

C#使用管理员权限打开cmd执行命令行的更多相关文章

  1. C# 调用CMD执行命令行

    这几天用c#做了一个项目,其中一个功能是要把生成的临时文件隐藏,同时,不能在屏幕上有调用CMD的痕迹,这里生成的临时文件的绝对路径为delfile为文件的绝对路径, 代码如下: private voi ...

  2. bat代码中判断 bat是否是以管理员权限运行,以及自动以管理员权限运行CMD BAT

    · bat 代码中判断bat是否是以管理员权限运行,以及自动以管理员权限运行CMD BAT 一.判断bat是否是以管理员权限运行 @echo off net.exe session >NUL & ...

  3. 如何设置默认以管理员权限运行cmd

    设置cmd以管理员权限运行 目的:创建或删除文件等命令时,需要管理员权限运行cmd(linux以root用户登录).   例如,创建日志目录.   方法一: 1.激活administrator用户 2 ...

  4. RobotFramework环境配置:默认以管理员权限运行cmd

    设置cmd以管理员权限运行 目的:创建或删除文件等命令时,需要管理员权限运行cmd(linux以root用户登录).   例如,创建日志目录.   方法一: 1.激活administrator用户 2 ...

  5. C#程序调用cmd执行命令

    对于C#通过程序来调用cmd命令的操作,网上有很多类似的文章,但很多都不行,竟是漫天的拷贝.我自己测试整理了一下. 代码: string str = Console.ReadLine(); Syste ...

  6. 在MacOSX下用管理员权限打开App应用程序

    最近但疼的事情比较多,特别是升级了10.9以后. 难怪10.9会免费,它喵的当我们所有人都是测试开发者,那我们做实验,到处都是BUG...虽然是这么吐槽了,但是实际上也没有特别大的,能够影响到我的生活 ...

  7. C#程序调用cmd执行命令(转)

    C#通过程序来调用cmd命令的操作 string str = Console.ReadLine(); System.Diagnostics.Process p = new System.Diagnos ...

  8. HTTP could not register URL http://+:86/. 设置VS默认以管理员权限打开

      在使用visual studio 2013启动self host webapi时候碰到下面的错误: 详细错误信息如下: HTTP could not register URL http://+:8 ...

  9. 让win7变成无线路由(需要用管理员权限打开)最后完善.rar

    让win7变成无线路由(需要用管理员权限打开)最后完善.bat @ECHO OFF CLS color 0a netsh wlan show drivers ECHO.★★★★★★★★★★★★★★★★ ...

随机推荐

  1. useState 的介绍和多状态声明(二)

    useState的介绍 useState是react自带的一个hook函数,它的作用是用来声明状态变量. 那我们从三个方面来看useState的用法,分别是声明.读取.使用(修改).这三个方面掌握了, ...

  2. java 判断list是否为空

    问题: 之前用 list!=null 来判断list是否为空,但发现,定义一个list后,即使里面并没有加入任何元素,返回的结果仍旧是 true, 其实,本意是希望在没有任何元素时,返回 false, ...

  3. C#读取Word指定页的内容

    /// <summary> /// Word按页读取内容 /// </summary> /// <param name="page">页数< ...

  4. Python 设计模式之建造者模式 Builder Pattern

    #引入建造者模式 肯德基的菜单上有 薯条, 鸡腿,鸡翅,鸡米花,可乐,橙汁,火腿汉堡,至尊虾汉堡,牛肉汉堡 , 鸡肉卷等这些单品,也有很多套餐. 比如 套餐1:鸡翅,至尊虾汉堡,可乐,薯条 套餐2:鸡 ...

  5. 替换分隔符 ^p, 或者是回车

    1  Excel 里面的数据, 粘出来到notepad上,再从notepad 粘到word, 再把world里面的分隔符或者是回车符替换成 其他的 .

  6. MYSQL Packet for query is too large (12054240 > 4194304). You can change this value on the server by setting the max_allowed_packet' variable.

    MYSQL Packet for query is too large (12054240 > 4194304). You can change this value on the server ...

  7. 移动端IM系统的协议选型:UDP还是TCP?(转)

    源: 移动端IM系统的协议选型:UDP还是TCP?

  8. seekBar拖动滑块

    中秋节学习,, 通过拖动滑块,改变图片的透明度 <?xml version="1.0" encoding="utf-8"?> <LinearL ...

  9. centos7设置rsyslog日志服务集中服务器

    centos7设置rsyslog日志服务集中服务器 环境:centos6.9_x86_64,自带的rsyslog版本是7.4.7,很多配置都不支持,于是进行升级后配置 # 安装新版本的rsyslog程 ...

  10. Python3基础 函数 参数为list 使用+=会影响到外部的实参

             Python : 3.7.3          OS : Ubuntu 18.04.2 LTS         IDE : pycharm-community-2019.1.3    ...