iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >如何实现CMD命令行中以管理员权限启动应用程序
  • 113
分享到

如何实现CMD命令行中以管理员权限启动应用程序

2023-06-08 10:06:31 113人浏览 安东尼
摘要

本篇内容主要讲解“如何实现CMD命令行中以管理员权限启动应用程序”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何实现CMD命令行中以管理员权限启动应用程序”吧!很多时候我们需要管理员权限来运行

本篇内容主要讲解“如何实现CMD命令行中以管理员权限启动应用程序”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何实现CMD命令行中以管理员权限启动应用程序”吧!

很多时候我们需要管理员权限来运行bat那么就需要结合vbscript来实现了

方法一:

%1 mshta vbscript:CreateObject("shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit

常用

@echo offmode con lines=30 cols=60%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exitcd /d "%~dp0"rem 下面可以写你的bat代码了

方法二:

@echo off %1 %2 ver|find "5.">nul&&Goto :st mshta vbscript:createobject("shell.application").shellexecute("%~s0","goto :st","","runas",1)(window.close)&goto :eof :st copy "%~0" "%windir%\system32\"

原理类似

ShellExecute method

Run a script or application in the windows Shell.

Syntax
.ShellExecute "application", "parameters", "dir", "verb", window

.ShellExecute 'some program.exe', '"some parameters with spaces"', , "runas", 1
Key
application The file to execute (required)
parameters Arguments for the executable
dir Working directory
verb The operation to execute (runas/open/edit/print)
window View mode application window (nORMal=1, hide=0, 2=Min, 3=max, 4=restore, 5=current, 7=min/inactive, 10=default)
Note the different (double " and single ' ) quotes that can be used to delimit paths with spaces.

The runas verb is undocumented but can be used to elevate permissions. When a script is run with elevated permissions several aspects of the user environment may change: The current directory, the current TEMP folder and any mapped drives will be disconnected.

runas will fail if you are running in WOW64 (a 32 bit process on 64 bit windows) for example %systemroot%\syswow64\cmd.exe ...

The ShellExecute method is a member of the IShellDispatch3 object.

Examples

Run a batch script with elevated permissions, flag=runas:

Set objshell = CreateObject("Shell.Application")objShell.ShellExecute "E:\demo\batchScript.cmd", "", "", "runas", 1

Run a VBScript with elevated permissions, flag=runas:

Set objShell = CreateObject("Shell.Application")objShell.ShellExecute "cscript", "E:\demo\vbscript.vbs", "", "runas", 1

“If you don't execute your ideas, they die” ~ Roger Von Oech

Related:

Run with elevated permissions - Script to run as Admin
.Exec - Execute command, returning an object
.Run - Run a command
joeware.net - CPAU (Create Process As User) like RunAs but with an options to encrypt the passWord.
Equivalent CMD command: ShellRunAs - Run a command under a different user account

 批处理文件中的%~dp0表示含义

~是扩展的意思,相当于把一个相对路径转换绝对路径
%0代指批处理文件自身
%1表示批处理文件命令行接收到的第一个参数,%2表示第二个,以此类推
%~d0 是指批处理所在的盘符,其中d代表drive
%~p0 是指批处理所在的目录,其中p代表path
%~dp0 是批处理所在的盘符加路径

cd %~dp0 就是进入批处理所在目录了

详细解释还可参考命令 call /?

自从Vista带来了UAC之后,应用程序就变成了两种,有管理员权限的,和没有管理员权限的。一些老的应用程序会莫名其妙地出错,这时候就要考虑右击应用程序,然后“以管理员身份运行”。这还不是什么大问题,exe文件的右键菜单里都会有这个,但是对于一些脚本文件(cmd, js一类)来说,就没那么方便了。通常需要重新开一个带管理员权限的命令行窗口,然后打很多cd回到刚的文件夹,然后再运行脚本,相当麻烦。

搜了一下,找到一个解决办法。把下面的代码保存为Elevate.js:

var command = WScript.Arguments.Item(0);var argument = "";for (var i = 0; i < WScript.Arguments.Count(); ++i){ argument += WScript.Arguments.Item(i) + " ";} try{ var shellapp = new ActiveXObject("Shell.Application"); shellapp.ShellExecute(command, argument, null, "runas", 1);}catch(e){ WScript.Echo("Something wrong: " + e.description);}

以后要以管理员身份运行程序的时候,只要输入“Elevate <exefile> <arguments>”就可以了,比如“Elevate cmd /k”。

当然,这个逃不过UAC的检查,还是会有一个对话框弹出来要点“确定”的。

到此,相信大家对“如何实现CMD命令行中以管理员权限启动应用程序”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: 如何实现CMD命令行中以管理员权限启动应用程序

本文链接: https://www.lsjlt.com/news/253704.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何实现CMD命令行中以管理员权限启动应用程序
    本篇内容主要讲解“如何实现CMD命令行中以管理员权限启动应用程序”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何实现CMD命令行中以管理员权限启动应用程序”吧!很多时候我们需要管理员权限来运行...
    99+
    2023-06-08
  • 如何以管理员权限运行Linux命令
    这篇文章主要介绍“如何以管理员权限运行Linux命令”,在日常操作中,相信很多人在如何以管理员权限运行Linux命令问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何以管理员权限运行Linux命令”的疑惑有所...
    99+
    2023-06-16
  • Python 实现程序自动以管理员权限运行的方法
    由于Windows的安全机制,Python写的脚本缺少了管理员权限,运行就会受到一些限制。 文章介绍Python 脚本自动以管理员权限运行的方法, 也就是如果脚本不是以管理员运行,就自动提升到管理员权...
    99+
    2023-09-12
    python 系统安全
  • 如何以管理员身份运行cmd命令提示符
    小编给大家分享一下如何以管理员身份运行cmd命令提示符,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!以管理员身份运行cmd命令提示符的方法:1、点击开始菜单,打开所有应用;2、打开windows系统文件夹,右键点击命令提示...
    99+
    2023-06-13
  • 如何在Ubuntu中使用sudo命令以root权限执行命令
    要在Ubuntu中使用sudo命令以root权限执行命令,您可以按照以下步骤操作: 打开终端窗口。您可以通过按下Ctrl + A...
    99+
    2024-04-02
  • 如何使用管理员权限启动 powershell 进程并重定向 stdin (os.exec)
    php小编子墨今天给大家分享一种使用管理员权限启动powershell进程并重定向stdin的方法。在某些情况下,我们需要以管理员权限运行powershell脚本,但是直接运行可能会遇...
    99+
    2024-02-10
    shell脚本
  • 如何判断 .NET Core 应用程序以管理员身份运行的
    目录1.euid2.setuid3.Demo有时候,我们需要知道当前程序是否以管理员身份运行,以便执行一些需要特殊权限的操作。 在github上找到了一个解决方案: //需要引用nu...
    99+
    2024-04-02
  • Win10系统中如何以管理员身份运行命令提示符
    以管理员身份运行命令提示符是大家在日常使用电脑过程中偶尔会用到的操作,那么这个操作在全新Win10系统中该如何进行呢?下面系统之家小编就为大家详细介绍一下! 【方法一:Win+X+A快捷键】这个需要同时按住三个键的组合...
    99+
    2023-06-07
    Win10 管理员身份 命令提示符 身份 系统 管理员
  • Linux中如何实现程序包管理与使用rpm命令
    这篇文章主要为大家展示了“Linux中如何实现程序包管理与使用rpm命令”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Linux中如何实现程序包管理与使用rpm...
    99+
    2024-04-02
  • LINUX中如何利用远程管理命令进行关机和重启
    这篇文章给大家分享的是有关LINUX中如何利用远程管理命令进行关机和重启的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。方法如下打开LINUX,这里用UBUNTU操作系统,打开左边的终端窗口。直接输入shutdow...
    99+
    2023-06-13
  • Windows系统中如何使用Shell命令来管理Java应用程序?
    在Windows系统中,使用Shell命令可以非常方便地管理Java应用程序。Shell命令可以让你在命令行中快速地启动、停止或重启应用程序,也可以帮助你查看应用程序的运行状态和日志信息。本文将介绍如何使用Shell命令来管理Java应用...
    99+
    2023-08-21
    django windows shell
  • LINUX如何利用远程管理命令进行关机和重启
    这篇“LINUX如何利用远程管理命令进行关机和重启”除了程序员外大部分人都不太理解,今天小编为了让大家更加理解“LINUX如何利用远程管理命令进行关机和重启”,给大家总结了以下内容,具有一定借鉴价值,内容详细步骤清晰,细节处理妥当,希望大家...
    99+
    2023-06-28
  • 如何在linux系统中使用管理员命令强行踢出用户
    这期内容当中小编将会给大家带来有关如何在linux系统中使用管理员命令强行踢出用户,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。linux强制踢出用户命令: 一、输入w命令查看已登录用户信息&n...
    99+
    2023-06-07
  • Python 中如何通过 shell 命令运行 Django 应用程序?
    Django 是一个基于 Python 的 Web 框架,它提供了强大的工具和功能来帮助开发人员构建高效、灵活、可扩展的 Web 应用程序。在开发 Django 应用程序时,我们通常需要在命令行中执行一些操作,比如运行服务器、创建数据库、...
    99+
    2023-09-27
    关键字 shell django
  • 如何在Prometheus中实现用户权限管理和访问控制
    在Prometheus中实现用户权限管理和访问控制可以通过以下步骤来实现: 使用基于OAuth2的认证服务:Prometheus...
    99+
    2024-03-04
    Prometheus
  • 如何使用批处理实现DOS命令帮助程序
    这篇文章主要介绍了如何使用批处理实现DOS命令帮助程序,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。根据命令命名的txt 代码如下:@echo off :z @cls @se...
    99+
    2023-06-08
  • Android UI中如何实现应用程序只启动一次引导界面
    这篇文章给大家分享的是有关Android UI中如何实现应用程序只启动一次引导界面的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、SharedPreferences的详细介绍和用法SharedPreferenc...
    99+
    2023-05-30
    android ui
  • Uniapp应用程序中如何实现自动更新
    随着移动应用的快速发展,每天都有数百万的应用程序从各种应用商店推出。由于安全问题和漏洞,无法保障应用的运行稳定性。为了解决这些问题,开发人员必须经常更新他们的应用程序。这就是为什么我们要实现自动更新的原因之一。Uniapp是个多端的开发框架...
    99+
    2023-05-14
  • 数据库中如何实现普通用户服务特殊管理权限
    这篇文章主要介绍数据库中如何实现普通用户服务特殊管理权限,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! 普通用户服务生成AWR报告权限:grant se...
    99+
    2024-04-02
  • 麒麟操作系统中的多用户和权限管理如何实现
    麒麟操作系统是一款基于Linux内核的自主研发的操作系统,其中多用户和权限管理是麒麟操作系统的重要功能之一。下面是麒麟操作系统中多用...
    99+
    2023-10-10
    麒麟操作系统
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作