VBS的RUN函数本身带三个参数.doc
《VBS的RUN函数本身带三个参数.doc》由会员分享,可在线阅读,更多相关《VBS的RUN函数本身带三个参数.doc(10页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、VBS的RUN函数本身带三个参数-隐藏后台运行模式 VBS的RUN函数本身带三个参数-隐藏后台运行模式 1.代码事例:DIM objShell set objShell=wscript.createObject(wscript.shell) iReturn=objShell.Run(cmd.exe /C C:addolcliAddolC.exe, 0, TRUE) VBS的RUN函数本身带三个参数,第一个参数就是你要运行的程序 第二个参数就是用来控制运行窗口模式 有0-9模式 其中0是隐藏后台运行,6是最小化运行 具体可以参数MSDN帮助文档 SW_HIDE 0 Hides the windo
2、w and activates another window. SW_MINIMIZE 6 Minimizes the specified window and activates the next top-level window in the Z order. SW_RESTORE 9 Activates and displays the window. If the window is minimized or maximized, Windows restores it to its original size and position. An application should s
3、pecify this flag when restoring a minimized window. Run的第三个参数将允许我们防止相关程序以并发方式运行。您可将第三个参数赋值为True,以便指示脚本停留在使用Run方法的代码行并保持等待状态,直到已被激活的程序运行完毕。我们已经知道了因未设定该参数所产生的后果,该参数在缺省状态下被设定为False,而这种设置必将导致两个程序同时运行。也就是说TRUE值时必须等待这个脚本完成才运行其他程序,而false时可能还未运行完又执行另外一个脚本 还有一种方式的隐藏运行 set ws=wscript.createobject(wscript.shel
4、l) ws.run bat.bat /start,0 将上面代码写在记事本里保存扩展名为*.vbs 。 以下是调用的批处理。即是上面中的bat.bat文件。 ECHO OFF C:addolcliAddolC.exe ECHO OFFobject.Run(strCommand, intWindowStyle, bWaitOnReturn) 参数object WshShell 对象。 strCommand 表示要运行的命令行的字符串值。必须包括要传递到可执行文件的所有参数。 intWindowStyle 可选。表示程序窗口外观的整数值。请注意,并非所有程序都使用此信息。 bWaitOnRetur
5、n 可选。布尔值,表示在继续执行脚本中的下一条语句之前,脚本是否等待执行完程序。如果设为 true,则在执行完程序后才执行脚本,Run 方法返回由程序返回的任何错误代码。如果设为 false(默认值),则 Run 方法将自动在启动程序后立即返回 0(不是错误代码)。 说明Run 方法返回一个整数。Run 方法启动在新 Windows 进程中运行的程序。可以让脚本等到程序执行完后再继续执行。这允许您同步运行脚本和程序。strCommand 参数内的环境变量自动扩展。如果某个文件类型已正确注册到某个程序中,则对该类型的文件调用 Run 方法时将执行该程序。例如,如果您的计算机系统中装有 Word,
6、则对 *.doc 文件调用 Run 方法时将启动 Word 并加载该文档。下表列出了 intWindowStyle 的可用设置。intWindowStyle 说明 0 隐藏一个窗口并激活另一个窗口。 1 激活并显示窗口。如果窗口处于最小化或最大化状态,则系统将其还原到原始大小和位置。第一次显示该窗口时,应用程序应指定此标志。 2 激活窗口并将其显示为最小化窗口。 3 激活窗口并将其显示为最大化窗口。 4 按最近的窗口大小和位置显示窗口。活动窗口保持活动状态。 5 激活窗口并按当前的大小和位置显示它。 6 最小化指定的窗口,并按照 Z 顺序激活下一个顶部窗口。 7 将窗口显示为最小化窗口。活动窗
7、口保持活动状态。 8 将窗口显示为当前状态。活动窗口保持活动状态。 9 激活并显示窗口。如果窗口处于最小化或最大化状态,则系统将其还原到原始大小和位置。还原最小化窗口时,应用程序应指定此标志。 10 根据启动应用程序的程序状态来设置显示状态。 VBS中run和exec的区别Set ws = CreateObject(WScript.Shell) 这里创建一个对象引用,以便在以下示例代码中使用。语法:(常识:作为过程使用时,不要加括号,否则出现编译器错误(参数唯一或没有时加括号不会出错,但建议不要加)ws.Run(strCommand, intWindowStyle, bWaitOnReturn
8、)Set objExec = ws.Exec(strCommand)WScript.Shell对象的这两个方法都可以用来运行程序,且可以带参数。都可以在程序路径中使用环境变量。都不能为程序指定工作目录、不能设置优先级。start命令可以。要指定工作目录,只能通过改变脚本宿主(WScript.exe/CScript.exe)的当前工作目录:ws.CurrentDirectory = 工作目录(常识:工作目录有何意义:1、有些程序需要相应目录下的dll等相关文件支持 2、相对路径问题)1、run可以直接运行文件(包括协议文件),会启动相关联的程序打开该文件(没有关联则出错)。start有此功能(更
9、高级,没有关联时会打开“打开方式”对话框)。exec只能运行程序。ws.run c:boot.iniws.exec notepad c:boot.ini2、run不仅可以直接运行位于path环境变量目录中的程序,还能运行在注册表App Paths中设置的程序“别名”。start有此功能。exec不行,只能直接运行位于path环境变量目录中的程序。ws.run iexplore iexplore 在 App Paths 中登记了别名。ws.exec calc3、run可以等待程序运行结束再执行下面的命令。start有此功能。exec不行。ws.run notepad, , true4、exec运
10、行的程序路径中即使含有空格,也可以不加引号(参数如需引号,它的引号不能省略)。run、start没有这个本领。(常识:vbs中一个引号字符本身要用两个引号表示,即写成。也可以用Chr函数得到引号:chr(34))ws.exec C:Program FilesInternet ExplorerIEXPLORE.EXEws.exec C:Program FilesInternet ExplorerIEXPLORE.EXEws.run C:Program FilesInternet ExplorerIEXPLORE.EXE5、最大的区别是:run着重于启动控制(设置窗口形式)。(start听名字知道
11、是为了启动,也可以简单设置窗口最大化、最小化。)exec着重于后续控制,并着重于控制命令行程序。run可以设置程序运行时的运行模式(前台后台:是否隐藏窗口)、窗口大小、激活状态(是否获取“焦点”),具体参数请参考手册Windows 脚本技术(Script56.chm)中关于run方法的说明。exec在启动程序后还能对其进行控制:获取运行状态、获取PID、强行中止进程。如果运行的是命令行程序,还能提供对 StdIn/StdOut/StdErr 流的访问:写入执行命令、获取命令输出等。运行命令行程序后只能通过StdIn写入命令,控制台窗口不再接受用户输入。ws.run notepad, 0 隐藏窗
12、口ws.run notepad, 4 运行后不激活,不打扰原来的活动窗口注意,手册上明确指出,run不能约束所有程序都按它指定的窗口形式运行,有些程序不听它的话,比如iexplore、calc等。运行ieplore时,它会夺取焦点成为活动窗口。run无法以最小化运行calc。Set oExec = ws.Exec(mspaint)WScript.Echo oExec.ProcessIdoExec.TerminateWScript.Echo oExec.Status 0为运行,1为结束Set oExec = ws.Exec(ipconfig)WScript.Echo oExec.StdOut.R
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VBS RUN 函数 本身 三个 参数
限制150内