在电脑启动时或者设置时间时运行指定的程序很容易实现。但是有时候还需要运行时不显示主界面,隐藏到后台运行。比如:开机时一段Bat批处理执行删除默认共享; 开机自动运行浏览器隐藏到后代打开指定网页等,希望所有的操作对用户都是不可见的。如果你也有这样的需求,这里我收集了几个让批处理、浏览器等程序隐藏到运行的方法或许可以帮到你。

  • 方法一: HideRun.vbs脚本文件
代码:CreateObject("WScript.Shell").Run "cmd /c D:test.bat",0


把以上代码复制到文本文件中,保存为.vbs文件(比如 HideRun.vbs),其中 D:test.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

或者: 

mshta vbscript:CreateObject("WScript.Shell").Run("iexplore http://luckerme.com",0)(window.close)


以上代码选一个复制到文本文件中,修改自定义的内容保存为.bat文件(比如 HideRun.bat)。

  • 方法三: HideRun.js文件

代码: 

new ActiveXObject('WScript.Shell').Run('cmd /c D:Test.bat',0);


把以上代码复制到文本文件中,保存为.js文件(比如 HideRun.js)。Javascript的字符串变量可以用单引号,从而方便命令行作为参数调用,而且js很好的支持多行语句用 ; 分隔写成一行。要注意的是:js要区分大小写,方法必须用括号,结尾必须有分号。所以写成命令行就是: 

mshta "javascript:new ActiveXObject('WScript.Shell').Run('cmd
/c D:test.bat',0);window.close()"
  • 方法四: 使用系统服务

代码: 

runassrv add /cmdline:"C:WindowsSystem32cmd.exe /c D:test.bat"  /name:"myservicesname"
net start myservicesname


可以用sc建立一个系统服务然后启动这个服务来启动批处理。缺点是启动服务较慢,需要管理员权限。

  • 方法五: 使用at计划任务

代码: 

at 09:00 "cmd /c D:Test.bat"


用at可以建立一个计划任务,在不输入 /interactive 参数可以后台运行。使用at必须有管理员权限。然后在系统就会自动后台以SYSTEM权限运行这个bat。

  • 方法六:使用第三方软件

今天搜索时找到了一款名为HOU任务计划(OnTimer.exe)的定时/循环执行任务的绿色小软件。软件虽小,功能很大。可以用来定时执行程序、DOS命令、从HTTP服务器下载程序运行、结束进程、模拟按键、发送EMAIL、网络唤醒、消息提示、关机、重启、注销、锁定、待机等操作。其中普通运行、参数运行、 执行DOS “备注”开头为“-h”则隐藏执行,即可满足我们的需求。相信的介绍及下载可以到软件的官方页面: http://www.yryz.net/soft-OnTimer.htm

上边五种方法简单方便,都是系统的功能,无需额外的软件。但是,自己创建的bat,vbs文件可能会被杀毒软件误报误删,所有设置好后最好手动加入到杀毒软件的信任列表。目前我使用的是最后一种方法,借助OnTimer.exe这个小软件,配置方便。而且,加入启动项后,360检查开机项目时不会提示禁止,在系统检查修复界面也不会检测到非安全项。其他杀软未测试。你可以都测试下,采用适合的方法实现隐藏运行程序的功能。

6个可以隐藏运行bat,浏览器等程序的方法的更多相关文章

  1. 一步一步部署WPF浏览器应用程序

    WPF浏览器应用程序与Silverlight,Asp.net相比,同是发布到服务器,在IE中运行.WPF浏览器应用程序部署起来却相对困难. 相信很多朋友在第一次部署WPF浏览器应用程序时,都遇到&qu ...

  2. 如何在Windows下面运行hadoop的MapReduce程序

    在Windows下面运行hadoop的MapReduce程序的方法: 1.下载hadoop的安装包,这里使用的是"hadoop-2.6.4.tar.gz": 2.将安装包直接解压到 ...

  3. 运行bat时隐藏cmd窗口

    运行bat时隐藏cmd窗口 新建一个shrjj.vbs文件,文件内容为: Set ws = CreateObject("Wscript.Shell") ws.run "c ...

  4. Windows如何后台运行bat文件(没有命令提示符框)

    怎么让bat文件在后台无声无息无影无形地运行呢? 用start/min命令去运行bat文件,电脑的任务栏下仍然会有相关的图标,以下的办法可以达到目的. 方法一: bat里有隐藏窗口的命令,很简单,只需 ...

  5. win7以管理员身份运行bat提示系统找不到指定的路径。

    windows7“以管理员身份运行”bat提示“系统找不到指定的路径.” 使用批处理安装服务,直接双击运行没有权限,右键“以管理员身份运行”却提示“系统找不到指定的路径.”,反复查看路径是正确的. 打 ...

  6. 网站卡死,照惯例运行.bat批量处理文件进行重启不起作用

    网站卡死,照惯例运行.bat批量处理文件进行重启不起作用,进入虚拟机控制台进行虚拟机重启仍然不起作用,通过ping分析物理服务器能ping通,各个虚拟机之前也能ping通,但是不能ping通外部,分析 ...

  7. 让MFC程序隐藏运行界面

    在MFC中隐藏运行界面确实花花点功力. 针对对话框程序,一种不是很好地实现方法是在OnPaint函数中添加如下代码: CWnd::ShowWindow(SW_HIDE); 添加后执行会发现屏幕会闪烁一 ...

  8. 解决win7无法运行bat批处理文件的方法

    在win7系统中我们可以将一些命令制作为bat批处理文件,只需双击打开即可运行命令,方便使用. 那么,要怎么运行bat批处理呢?最近有用户反馈,遇到无法运行bat批处理的现象,该怎么办呢? 修复方法一 ...

  9. 以超级管理员方式运行bat文件

    以超级管理员方式直接运行bat 脚本文件,直接上脚本代码,以下是以一个服务的安装为例子 @echo =============================== ¶¯Ì¬ÅŲú·þÎñ ===== ...

随机推荐

  1. HDU 4768 Flyer(二分法)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4768 题目大意:每组数据有n行输入,每行有三个数A.B.C,A<=B且小于2^32,从A到B每隔 ...

  2. 九度OJ 1513 二进制中1的个数

    题目地址:http://ac.jobdu.com/problem.php?pid=1513 题目描述: 输入一个整数,输出该数二进制表示中1的个数.其中负数用补码表示. 输入: 输入可能包含多个测试样 ...

  3. PHP扩展开发(1):入门

    有关PHP扩展开发的文章.博客已经很多了,比较经典的有: TIPI项目(http://www.php-internals.com/,强烈推荐) <Extending and Embedding ...

  4. jQuery中模拟用户操作

    有时为了节省不想手动操作网页,但又想看到用户操作时的效果,可以用到jQuery提供的trigger方法.见下图代码 在不点击按钮时仍然想弹出this.value 我们只需要在后面加上.trigger( ...

  5. ECMAScript 6十大特性

    ES6入门 http://es6.ruanyifeng.com/ ES6排名前十的最佳特性列表 Default Parameters(默认参数) in ES6 Template Literals (模 ...

  6. C++ 实现设计模式之观察者模式

    1. 什么是观察者模式? 观察者模式(有时又被称为发布-订阅Subscribe>模式.模型-视图View>模式.源-收听者Listener>模式或从属者模式)是软件设计模式的一种.在 ...

  7. PL/SQL — BULK COLLECT用法

    BULK COLLECT 子句会批量检索结果,即一次性将结果集绑定到一个集合变量中,并从SQL引擎发送到PL/SQL引擎.通常可以在SELECT INTO.FETCH INTO以及RETURNING ...

  8. merge into 和 update 的效率对比

    以前只考虑 merge into 只是在特定场合下方便才使用的,今天才发现,merge into 竟然会比 update 在更新数据时有这么大的改进.其实呢,merge into部分的update和u ...

  9. UILabel 属性祥记

    创建label UILabel *label1 = [[UILabel alloc] initWithFrame:CGRectMake(20, 40, 280, 80)]; 设置背景色 label1. ...

  10. swift-UILabel

    // Mark: 2. 创建label private func creatLabel(title: NSString)->UILabel{ /// 创建label let titleL = U ...