怎么在CMD中用管理员权限运行程序?
的有关信息介绍如下:WIN7拥有管理员权限的使用方法:
1.右键单击“计算机”,进入“管理”找到“用户和组”
2.找到administrators,右键调出属性,把“该账户已禁用”前面的勾去掉。
回桌面
3.新建“记事本”,copy 如下内容:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\*\shell\runas]
@=管理员取得所有权
NoWorkingDirectory=
[HKEY_CLASSES_ROOT\*\shell\runas\command]
@=cmd.exe /c takeown /f \%1\ && icacls \%1\ /grant administrators:F
IsolatedCommand=cmd.exe /c takeown /f \%1\ && icacls \%1\ /grant administrators:F
[HKEY_CLASSES_ROOT\exefile\shell\runas2]
@=管理员取得所有权
NoWorkingDirectory=
[HKEY_CLASSES_ROOT\exefile\shell\runas2\command]
@=cmd.exe /c takeown /f \%1\ && icacls \%1\ /grant administrators:F
IsolatedCommand=cmd.exe /c takeown /f \%1\ && icacls \%1\ /grant administrators:F
[HKEY_CLASSES_ROOT\Directory\shell\runas]
@=管理员取得所有权
NoWorkingDirectory=
[HKEY_CLASSES_ROOT\Directory\shell\runas\command]
@=cmd.exe /c takeown /f \%1\ /r /d y && icacls \%1\ /grant administrators:F /t
IsolatedCommand=cmd.exe /c takeown /f \%1\ /r /d y && icacls \%1\ /grant administrators:F /t
然后另存为win7获取管理员权限.reg,后缀名必须是 .reg
将另存成的注册表信息导入,这样就获得了WIN7管理员权限了。
在文件夹上单击右键就会出现 “管理员取得所有权”
好多方法:
1、找到 windows\system32 里面的 cmd.exe, 点右键,“以管理员身份运行”;
2、把 windows\system32\cmd.exe 创建快捷方式到桌面,以后可以直接在快捷图标上点右键,“以管理员身份运行”;
3、开始--运行,输入 cmd,右击菜单上面出现的 cmd.exe ,“以管理员身份运行”;
…………
@echo off
if %1==h goto begin
start mshta vbscript:createobject(wscript.shell).run(%~nx0 h,0)(window.close)&&exit
:begin
这里写命令
方法一:
@echo off if %1==h goto begin start mshta vbscript:createobject(wscript.shell).run(%~nx0 h,0)(window.close)&&exit :begin ::以下为正常批处理命令,不可含有pause set/p等交互命令
如果双击一个批处理,等价于参数为空,而一些应用程序需要参数,比如在cmd窗口输入shutdowm -s -t 0,其中-s -t 0就为参数。shutdown为%0,-s为%1,-t为%2,以此类推。 第一行我们先跳过,看第二行,表示利用mshta创建一个vbs程序,内容为:createobject(wscript.shell).run(……).如果运行的批处理名为a.bat,在C:\下,那%0代表C:\a.bat,%~nx0代表a.bat。h极为参数%1,0表示隐藏运行。由于你双击运行,故第一次批处理%1为空,if不成立,转而运行下一句。然后再次打开自己,并传递参数h,此时if成立,跳转至begin开始运行。 这两行很经典,可以使批处理无窗口运行。
方法二:(这个不会生成临时文件(兼容空格路径的):
@echo off if %1 == h goto begin mshta vbscript:createobject(wscript.shell).run(%~fs0 h,0)(window.close)&&exit :begin rem 下边开始写批处代码了
方法三:
将下面任何一句话加在@echo off下面都可以起到隐藏执行的效果,(code标签后就是要隐藏执行的任务) 两句代码的思路相同,实现手段不同.请细细体味:
if %1==h (goto code) else (mshta vbscript:createobject^(wscript.shell^).run^(%~fs0 h,0^)^(window.close^)&exit)
if exist #hide.vbs (del #hide.vbs &goto code) else (echo createobject^(wscript.shell^).run %~fs0,0 #hide.vbs&start
#hide.vbs&exit)
这段代码不会闪提示符出来 @echo off if %1 == h goto begin mshta vbscript:createobject(wscript.shell).run(%~nx0 h,0)(window.close)&&exit :begin rem 下边开始写批处代码了
方法四:
@echo off start /min 1.bat
将上面的代码保存为: 2.bat
之后将你的批处理文件保存为 1.bat,运行之前先打开2.bat,则1.bat就最小化运行了.
(1)通过批处理命令实现。缺点:会看到一个窗口一闪而逝。优点:简单,直接添加即可。
@echo off if %1==h goto begin start mshta vbscript:createobject(wscript.shell).run(%~nx0 h,0)(window.close)&&exit :begin::以下为正常批处理命令,不可含有pause set/p等交互命令pause
(2)利用vbs脚本实现隐藏。缺点:调用麻烦点。优点:基本看不到痕迹(非绝对的,指一般用户)
HideRun.vbs
CreateObject(WScript.Shell).Run cmd /c D:/test.bat,0其中D:/test.bat是你的批处理路径
.....................................................................................................................................
另一思路为把bat转换成vbs,然后vbs生成一个临时bat文件,然后WScript.Shell.Run隐藏启动这个临时bat。
HideRun.bat
echo CreateObject(WScript.Shell).Run cmd /c D:/test.bat,0$tmp.vbscscript.exe /e:vbscript $tmp.vbsdel $tmp.vbs这个批处理其实不能使其批处理本身隐藏,但是下面大部分隐藏调用批处理的原理和基础。
HideRun.js
new ActiveXObject('WScript.Shell').Run('cmd /c D:/Test.bat',0);用JavaScript有什么好处呢?js的字符串变量可以用单引号,从而方便命令行作为参数调用,而且js很好的支持多行语句用 ; 分隔写成一行。要注意的是:js要区分大小写,方法
必须用括号,结尾必须有分号。所以就成了下面的命令:
mshta javascript:new ActiveXObject('WScript.Shell').Run('cmd /c D:/test.bat',0);window.close()
通常系统管理员会向用户端推送一些脚本并运行,或者拷贝批处理文件到客户端由用户自己运行。但是大部分脚本在运行时会弹出黑色背景的DOS窗口,这会让不少用户不知所
措,甚至误操作关闭正在运行的窗口。好在批处理文件的DOS窗口是可以隐藏的,以下是几种隐藏批处理运行窗口的方法。
1.基础
HideRun.vbs
CreateObject(WScript.Shell).Run cmd /c D:/test.bat,0其中D:/test.bat是你的批处理路径
另一思路为把bat转换成vbs,然后vbs生成一个临时bat文件,然后WScript.Shell.Run隐藏启动这个临时bat。
HideRun.bat
echo CreateObject(WScript.Shell).Run cmd /c D:/test.bat,0$tmp.vbscscript.exe /e:vbscript $tmp.vbsdel $tmp.vbs这个批处理其实不能使其批处理本身隐藏,但是下面大部分隐藏调用批处理的原理和基础。
HideRun.js
new ActiveXObject('WScript.Shell').Run('cmd /c D:/Test.bat',0);用Javascript有什么好处呢?js的字符串变量可以用单引号,从而方便命令行作为参数调用,而且js很好的支持多行语句用 ; 分隔写成一行。要注意的是:js要区分大小写,方法
必须用括号,结尾必须有分号。所以就成了下面的命令:
mshta javascript:new ActiveXObject('WScript.Shell').Run('cmd /c D:/test.bat',0);window.close()
2.用快捷方式
如果要使一个批处理本身隐藏,可以参考附件里的一个快捷方式,修改附件中的相关路径即可隐藏启动你的批处理。可以用vbs来建立一个 .lnk,其实用批处理也行(先echo一个
vbs出来)
3.利用系统服务
可以建立一个系统服务然后启动这个服务来启动批处理。缺点是启动服务较慢,需要管理员权限
runassrv add /cmdline:C:/Windows/System32/cmd.exe /c D:/test.bat /name:mysrvnet start mysrv
4.利用at计划任务
用at可以建立一个计划任务,在不输入 /interactive 参数可以后台运行。但是建使用at必须有管理员权限
at 09:10 cmd /c D:/Test.bat
然后在 9:10 系统就会自动后台以SYSTEM权限运行这个bat
路径加程序名称就行了
比如运行记事本:(当然如果是系统路径,可以省去了,这里就是举个例子而已)
命令行输入:
C:\Windows\System32\notepad.exe
回车后就运行了记事本,其它程序类推
程序效果没有区别。因为CMD /C 执行,实际上是先进一个CMD,再直接执行程序,再退出此CMD,它们都是直接执行程序,所以没什么区别。
我刚刚做了个象棋游戏,但是还没有实现人工智能,你有没有兴趣一起研究?hi我吧。
试试用免费的开放引擎吧。unity之类的。
你用的是什么操作系统?Win 7的Dos界面是不存在这样的问题的,这个对你很有必要吗,要不就装个win7吧。
两种方法
一、改变cmd窗口的属性。
就是在cmd窗口的上边框上右键 → 属性 → 第三个页里,改一下画面的size
二、使用管道输出到文件
就是在你的命令行的最后加上输出到文件就行了。
例: 命令行 cl a.c
输出到 cl a.c result.txt 这个是输出到你的当前运行的目录,文件是result.txt
或者 cl a.c C:\result.txt 这个是输出到你指定的目录中,文件是result.txt
这样,在文件result.txt中,就是你想要的东西啦