2016 - 2025

感恩一路有你

学会用按键精灵制作脚本:用脚本运行可执行程序

浏览量:4471 时间:2024-06-27 18:21:03 作者:采采

Runapp命令,看上去是不是觉得so easy?不就是runapp某个程序的路径,然后就可以打开这个程序了吗?老话怎么说来着,越简单的东西越是不简单。Runapp使用起来也是处处暗藏杀机滴。

1. Runapp命令是个啥?

命令名称RunApp,运行命令功能启动一个程序或者打开一个文件。

2. 重头杀机——你所要启动的程序是带参数的

Runapp不支持启动带参数的程序。首先,我们可以使用进程查看工具,查看下我们要启动的程序是否是带有参数的。然后,我们打开进程查看工具,然后点击我们要查看的程序,例如QQ程序。如果是带有参数的程序,用进程工具打开之后,弹出的界面,在程序路径后面会出现参数。例如:F:桌面程序目录 ot.exe $-fl$。

3. 解决方法之一

鼠标右键,创建快捷方式。右击创建好的快捷方式,选择属性。在“目标内容”填写目标文件路径及参数,如F:桌面程序目录 ot.exe $-fl$。在“起始位置”填写目标文件夹,如F:桌面程序目录(用进程查看工具查看,有的情况下会发现,程序所在的位置并不是程序的目录,这里要注意确认,一定要填写程序的起始位置,程序所在的目标文件夹的位置)。

如图所示:

使用RunApp启动这个快捷方式,例如在此快捷方式在桌面时。Call RunApp("C:UsersDeathDesktop

ot.exe.lnk")

经过上面的两步就可以达到预想的目的了。

4. 解决方法之二

使用命令库里的Call Lib.API.运行程序(程序路径)这条命令来运行,这条命令里使用了ShellExecute函数来运行程序,据说这函数十分流弊,可以运行所有可执行文件。

5. 杀机之——粗心犯下的错

例如:写路径的时候,路径前后多加了肉眼很难注意到的空格。RunApp " G:清理垃圾"和RunApp "G:清理垃圾 "上面的两句代码,前后分别多出了一个空格,出现了空格是无法运行起来的。所以要特别注意,不能因为手抖多打了几个空格,不然调试那么幸苦,结果发现是败在了小小空格的手上,会忍不住想要掐自己的。

正确的:RunApp "G:清理垃圾"

如果是先把地址赋值给变量,再runapp变量的话,要注意下变量复制过程中有没有多了点什么或者少了点什么。

再例如,在自定义UserVar里定义程序运行地址后:

UserVar YX"D:QQQQProtectBinQQProtect.exe"; "QQ地址:" RunApp(YX)

这样的情况,要注意下自定义界面里的QQ地址这项,是不是已经被修改并且保存成了其他的值。

如图:QQ地址的值已经变化了,这时候运行的话,就不能运行之前设置的路径里的程序。

6. 拓展知识:Runapp打开文件,如何选择打开方式?

例如我要用画图打开一张bmp图片。我们可以这样:RunApp "mspaint.exe G:图片"

效果:

RunApp "mspaint.exe G:图片"

mspaint.exe是画图软件的运行路径,空格之后输入图片路径G:图片。

Runapp(notepad)和Runapp("notepad")调试后为什么结果会不同?Runapp(notepad)打开的是按键精灵的目录文件夹,而Runapp("notepad")打开的是记事本,这个引号的作用是什么呢?Runapp(notepad)里的notepad是一个变量,变量没赋值默认为0,函数默认运行按键精灵目录文件夹。Runapp("notepad")里的"notepad"是字符串型,是记事本的相对路径。函数则运行记事本。

Runapp为什么不能执行cmd里的MD命令?例如:

path"md f:a" runapp(path)

并不能在F盘新建A文件夹。为什么呢?因为md不是一个程序,而是CMD.exe里面的一个创建文件夹的命令,所以需要用cmd打开运行。

正确的应该是这样:

path"cmd /c md f:a" runapp(path)

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。