精品免费教程

第30课 RunApp启动运行程序 - 《按键精灵9 · 经典教程》
  • 楼主 紫猫
  • 145902022-4-2 21:58:43

按键电脑版

教程封面: 点击查看
按键版本: 按键精灵9
教程难度: 中级教程
教程专辑: 《按键精灵9 · 经典教程》
教程简介: 这是我们早期按键精灵9的经典教程系列,当时讲完没多久就按键2014出来了,所以一直放在某个角落吃灰。现按键论坛重启,急需一套全面的零基础免费教程,故响应号召,将这部分视频重新整理并加上图文说明后发布。虽然教程年代久远,但按键精灵9的语法与按键精灵2014版完全一样,仅仅只是界面不同而已,所以可以放心学习,而一些改动的地方,我也将会在帖子中以图文形式告知大家。由于这个系列是我刚开始授课时讲解的,有点小紧张,语速比较慢,也有一些重复话语,推荐大家2倍速以上观看,捂脸,逃。。。
教程下载: --
网盘密码: 无
备注说明: --
[media]https://www.bilibili.com/video/BV1HL411g7mx[/media]
教程内容介绍

RunApp 运行
启动一个程序或者打开一个文件,常用于启动游戏,但是有些游戏使用本命令会启动失败,这种情况我们可以使用API形式启动游戏,详见下面例子
[mw_shl_code=qscript,true]//高级例子1
//介绍: 部分应用程序无法使用RunApp命令打开, 故这里提供一个API启动程序命令
//程序路径: 要启动程序的完整路径
//下面两行是API的声明, 请放在脚本开头
Private Declare Function GetDesktopWindow Lib "user32" () As Long
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal Hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Sub zmRunApp(程序路径)
    Dim p, DirPath, FileName
    p = InStrRev(程序路径, "\")
    DirPath = Left(程序路径, p)
    FileName = Right(程序路径, Len(程序路径) - p)
    ShellExecute GetDesktopWindow, "open", FileName, vbNullString, DirPath, 5
End Sub

//调用例子如下:
zmRunApp "C:\Program Files (x86)\Tencent\QQ\Bin\QQ.exe"[/mw_shl_code]

除了这个功能外,一些命令行也可以通过这个RunApp来执行,详见下面例子
[mw_shl_code=qscript,true]//高级例子2
//介绍: 如果你要执行CMD命令行内容, 可以尝试使用本函数
//命令行: 命令行代码内容, 如果存在文件路径, 请给路径加单引号, 例如 "'C:\Program Files (x86)\Tencent\QQ\Bin\QQ.exe'"
Function zmRunCMD(命令行)
    Dim fs, tempFile, f, tempText
    命令行 = Replace(命令行, "'", chr(34))
    Set fs = CreateObject("scripting.FileSystemObject")
    tempFile = fs.GetSpecialFolder(2) & "\" & fs.GetTempName
    RunApp "cmd.exe /c " & 命令行 &" > " & tempFile
    //如果命令行执行耗时较久, 请加长延时的时间
    Delay 1000
    If fs.FileExists(tempFile) Then
        Set f = fs.openTextFile(tempFile, 1)
        tempText = f.ReadAll
        f.Close
        Set f = Nothing
    End If
    Set fs = Nothing
    zmRunCMD = tempText
End Function

//调用例子, 下面是执行dir命令行并输出结果
TracePrint zmRunCMD("dir")[/mw_shl_code]
倒序浏览 看全部 全部回复
暂无回复,快来抢沙发
回复 收藏
天天打卡