几种隐藏批处理运行窗口的方法
(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.vbs
cscript.exe /e:vbscript $tmp.vbs
del $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.vbs
cscript.exe /e:vbscript $tmp.vbs
del $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:"mysrv"
net start mysrv
4.利用at计划任务
用at可以建立一个计划任务,在不输入 /interactive 参数可以后台运行。但是建使用at必须有管理员权限
at 09:10 "cmd /c D:/Test.bat"
然后在 9:10 系统就会自动后台以SYSTEM权限运行这个bat
5.利用ftype文件关联
ftype batfile=C:/Windows/System32/mshta "javascript:new ActiveXObject('WScript.Shell').Run('cmd /c%1',0);window.close();"
6.其他用户
Windows 2k/XP支持多用户,如果能在后台登陆另一个账户的桌面然后运行一个批处理,就能完全达到隐藏的目的
7.编译成可执行文件
不少方法可以实现,可以直接利用的工具有 Quick Batch file compiler。
几种隐藏批处理运行窗口的方法相关推荐
- qt界面黑的咋办_去掉console黑窗口的方法(qt和vs)
QT的入口函数是main,VS下运行QT界面 会弹出一个黑黑的控制台窗口,怎么去掉这控制台窗口呢? 我找到两种办法去掉Console窗口. 方法一.修改QT的project文件 这种方法时候其他OS平 ...
- win10运行在哪里打开 win10怎么打开运行窗口快捷键
win10系统的运行命令框在哪里?win10打开运行对话框的快捷键是什么?运行窗口是使用windows系统比较常用的工具,运行框可以通过命令快速调用windows组件.有用户第一次使用win10系统, ...
- w8计算机主程序在哪里,Win8怎么打开运行窗口_Win8运行在哪里打开?-192路由网
问:Win8运行程序在哪里打开?电脑安装的是Win8操作系统,我想打开Win8电脑上的运行程序,但是不知道运行程序在哪里,找不到打开的方式. 请问在Win8电脑上,怎么才能打开运行程序窗口? 答:Wi ...
- win7计算机管理对话框功能,win7如何打开运行对话框_win7电脑系统运行窗口怎么打开...
当我们要打开注册表或者服务等系统功能的时候,都会需要打开运行窗口来操作,不过有很多win7系统用户不知道如何打开运行对话框,其实方法有很多种,本文就一一给大家详细介绍一下win7电脑系统运行窗口的详细 ...
- Windows打开运行窗口
针对不同的Windows系统,打开运行窗口的方法如下: Windows 8/10直接按Windows键+R即可打开运行窗口. Windows 7/8.1点击桌面下边任务栏最左边的Windows图标,即 ...
- 让批处理运行不显示窗口的两个方法
方法一: 编辑一个vbs脚本,在其中以隐藏窗口运行批处理程序. ------------------------------------------------------------ Set ws ...
- c语言 不显示dos窗口,运行DOS批处理不显示DOS窗口的方法
运行DOS批处理不显示DOS窗口的方法 内存系统的R盘,有个文件拷贝压缩解压的过程,用批处理非常方便. 原来需要两个RAR自解压文件来达到目的.后来看到有网友用7z来做这件事情,会不会更方便快速呢?至 ...
- PowerShell隐藏不显示窗口的多种方法
转载 https://www.jb51.net/article/68186.htm 隐藏不显示窗口的多种方法这篇文章主要介绍了PowerShell隐藏不显示窗口的多种方法,本文讲解了启动PowerSh ...
- DOS批处理静默执行的方法(无窗口)
方法1: 使用批处理在执行时可以隐藏命令行显示的功能来实现. 创建如下的批处理: 代码示例: set ws=wscript.createobject("wscript.shell" ...
最新文章
- js实现图片虚化_js canvas画布实现高斯模糊效果
- 个人知识体系思维导图_高中数学知识点思维导图
- linux c++ 函数 查看,在C++ man pages中查询C++的函数
- linux查看usb设备文件,linux – 确定USB设备文件路径
- 初次运行git前的配置
- http Error 503 server unavailable
- 2019招商银行M-Geeker线上比赛题解析
- PHP生成缩略图(2)--等比缩略图
- MATLAB2016添加工具箱toolbox方法,有截图
- FaceDetector(人脸识别)
- 1.swoole 简介
- 38. Element cloneNode() 方法
- 阶段5 3.微服务项目【学成在线】_day01 搭建环境 CMS服务端开发_02-项目概述-功能构架-功能模块和项目原型...
- php curl 命令行,curl 命令行教程
- MATLAB调用Fortran
- 字符串和数字相加,结果为字符串
- 更新驱动后计算机不能开机,(图文)Win10更新显卡驱动后无法开机进入系统
- 能不能把ASMR做成一门正经生意?
- 问题描述:the jar file jrt-fs.jar has no source attachment
- android按键定义