# 从外部启动Quicker动作 💡 专业版功能。 # 概述 如果需要在其他地方发起执行某个Quicker动作,如通过计划任务定时执行动作、在桌面上建立快捷方式、在浏览器中点击链接执行动作等,可以通过本文中的方式来实现。 如果您需要在一个动作中启动另外一个动作,请使用“[运行或停止动作](https://getquicker.net/kc/help/doc/runaction)”模块。该模块不需要专业版。 # 动作标识 可以使用**动作ID**、**动作的名称**、**动作库ID**(从动作库安装的动作)指定要运行的动作。在本文下面的部分,使用“动作标识”指代这些信息。
当使用动作名称或动作库ID时,请注意不能有重复。 **如何获得动作ID?**
在动作上点右键,在打开的菜单中选择“信息”,可以在二级菜单中选择复制动作ID或复制动作URI【菜单功能下个版本可用】:
![image.png](https://cdn.nlark.com/yuque/0/2019/png/272392/1554100073892-c4bf9d49-2618-41ba-9446-c233cca93057.png#averageHue=%23edeceb&height=109&id=fPsu8&originHeight=164&originWidth=533&originalType=binary&ratio=1&rotation=0&showTitle=false&size=19932&status=done&style=none&title=&width=355) 也可以在打开的动作信息窗口中点击动作ID:
![image.png](https://cdn.nlark.com/yuque/0/2019/png/272392/1554087547420-117dc3b1-6388-41d3-8bb6-4d4c83a22853.png#averageHue=%23fbf8f8&height=314&id=Is3z8&originHeight=471&originWidth=546&originalType=binary&ratio=1&rotation=0&showTitle=false&size=22429&status=done&style=none&title=&width=364) # 通过命令行或第三方程序启动 ## 常规 启动方式:
`**"C:\Program Files\Quicker\QuickerStarter.exe" runaction:动作标识**` 如果要给动作传递参数:
`**"C:\Program Files\Quicker\QuickerStarter.exe" "runaction:动作标识 参数内容"**`
从1.8.0版本开始,也可以使用问号作为分隔符:
`**"C:\Program Files\Quicker\QuickerStarter.exe" runaction:动作标识?参数内容**` 从控制台返回动作结果(1.30.12+) ## 返回动作结果 为命令行增加`-c` (表示使用控制台返回结果,默认最长等待20秒)或`-c30`(-c加数字连写,表示从控制台返回结果,最长等待30秒)。
例如:
`"C:\Program Files\Quicker\QuickerStarter.exe" -c "runaction:动作标识 参数内容"`
`"C:\Program Files\Quicker\QuickerStarter.exe" -c100 "runaction:动作标识 参数内容"` 在动作中,通过“停止”模块返回内容。 如下面的动作直接返回收到的参数:
![image.png](https://cdn.nlark.com/yuque/0/2022/png/272392/1646803407528-ff3e816b-3de8-4316-a8a8-da5d07dc2273.png#averageHue=%23fbfbfb&clientId=ubf4535aa-ac34-4&from=paste&height=517&id=ua3d06c45&originHeight=776&originWidth=1257&originalType=binary&ratio=1&rotation=0&showTitle=false&size=61672&status=done&style=none&taskId=u12ce504b-c3b5-41f2-9c55-8128e27a834&title=&width=838)
运行的效果如下图所示(参数为abcdefg,原样返回了abcdefg):
![image.png](https://cdn.nlark.com/yuque/0/2022/png/272392/1646803340197-a5b98741-68ea-46b1-8ce1-191d15032219.png#averageHue=%2311100f&clientId=ubf4535aa-ac34-4&from=paste&height=69&id=u2af5337f&originHeight=104&originWidth=1245&originalType=binary&ratio=1&rotation=0&showTitle=false&size=11765&status=done&style=none&taskId=u93656720-4c8f-41c1-aacc-2cf56394776&title=&width=830) 从python中获取返回值的示例(来自网友@地球) ```python from subprocess import Popen, PIPE proc = Popen( [ "C:\Program Files\Quicker\QuickerStarter.exe", "-c", "runaction:动作标识?参数" ], stdout=PIPE, ) out, err = proc.communicate() proc.wait() print(out, err) ``` 必须要注意:
1. 不能使用shell=True(这个默认值,不需要管)
2. stdout=PIPE ## 在命令行中通过URI方式启动 C:\Users\cuili>**start quicker:runaction:动作id或名称** ## PowerShell 方法1:
`Start-Process "c:/program files/quicker/quickerstarter.exe" -ArgumentList "runaction:动作ID或名称?参数"` 方法2:
`cmd.exe /c "C:\Program Files\Quicker\QuickerStarter.exe" runaction:URI` 方法3(在最前面加上 `&` 即可):
`&'C:\Program Files\Quicker\QuickerStarter.exe' 'runaction:{动作ID}?{参数}'` ## Aardio ```csharp import process process.execute("C:\Program Files\Quicker\QuickerStarter.exe","runaction:动作ID或名称?参数") ``` 以上内容感谢网友@fantasynew提供。 # 通过URI方式启动 URI格式为: **quicker:runaction:动作标识**
如:
quicker:runaction:25d718df-0f37-43ae-9fac-58fca1888113
quicker:runaction:动作名称 动作参数
quicker:runaction:动作名称?动作参数 (1.8.0+版本) 可以直接在Windows运行窗口(Win+R)中执行uri,
![image.png](https://cdn.nlark.com/yuque/0/2019/png/272392/1554088116923-6a1cc4f8-7414-49fd-aaa1-76d59847bd4f.png#averageHue=%23f5f5f4&height=216&id=Dq4po&originHeight=325&originWidth=626&originalType=binary&ratio=1&rotation=0&showTitle=false&size=27364&status=done&style=none&title=&width=417) 或点击此格式的网页链接。如下面的网页代码: > 开启截图 > 开启动作xx 通过URI方式启动会比通过quickerstarter.exe稍微慢一点(多一次协议跳转的过程)。 # 其他应用方式参考 ## 在桌面上创建动作的快捷方式 可以用命令行参数或uri格式。下图为uri格式的示例:(在桌面上右键,选择“新建”-》“快捷方式”)
![image.png](https://cdn.nlark.com/yuque/0/2019/png/272392/1554087988598-efee2746-1a76-4599-a0e9-37d97c3b5a26.png#height=473&id=lznCi&originHeight=710&originWidth=960&originalType=binary&ratio=1&rotation=0&showTitle=false&size=45923&status=done&style=none&title=&width=640) ## 在一个动作中启动另外一个动作 在组合动作中,使用“运行或打开”模块,将uri输入到“路径”参数中接口。![image.png](https://cdn.nlark.com/yuque/0/2019/png/272392/1554097255641-3de252af-c63a-4f70-9cd7-1ab4217a8b23.png#height=231&id=SzrGn&originHeight=347&originWidth=1180&originalType=binary&ratio=1&rotation=0&showTitle=false&size=44182&status=done&style=none&title=&width=787)
注意:此方式会立刻返回,不能等待动作执行完成。 ## 在AHK软件中,通过快捷键调用Quicker动作 ``` Run, "quicker:runaction:动作标识?动作参数" ``` ## 在VBA中,调用Quicker动作 VBA代码中使用Shell函数,代码如下:
`Shell "C:\Program Files\Quicker\QuickerStarter.exe runaction:动作ID"`
示例:
![TIM图片20190401160144.png](https://cdn.nlark.com/yuque/0/2019/png/292207/1554106075524-878918cc-0a59-43c1-b24c-42479af78daf.png#height=150&id=QrvyF&originHeight=150&originWidth=653&originalType=binary&ratio=1&rotation=0&showTitle=false&size=7724&status=done&style=none&title=&width=653) ## 在python中 ```python # 方法1 import subprocess subprocess.run(["C:\Program Files\Quicker\QuickerStarter.exe","runaction:动作ID或名称?参数"]) # 方法2 import os os.system("start quicker:runaction:25d718df-0f37-43ae-9fac-58fca1888113?参数") ``` ## 使用计划任务启动Quicker动作 新建计划任务,操作类型选择“启动程序”。“程序或脚本”参数选择QuickerStarter.exe的完整路径(C:\Program Files\Quicker\QuickerStarter.exe),“添加参数”参数中输入“runaction:动作标识”。
![image.png](https://cdn.nlark.com/yuque/0/2019/png/272392/1556028288990-b647a6bc-8501-42f5-9f2d-7c83ecdc8f43.png#height=476&id=bB82R&originHeight=750&originWidth=680&originalType=binary&ratio=1&rotation=0&showTitle=false&size=73461&status=done&style=none&title=&width=432) # 注意事项 请勿使用管理员身份启动Quicker,会造成无法访问quicker协议。
![image.png](https://cdn.nlark.com/yuque/0/2021/png/272392/1619759266755-09ceb363-374c-434f-893d-96b8591fa734.png#clientId=u029b7e9c-c6bb-4&from=paste&height=138&id=u79e5c308&originHeight=172&originWidth=322&originalType=binary&ratio=1&rotation=0&showTitle=false&size=23395&status=done&style=none&taskId=ue9a03358-0be3-4699-ade3-8e0eb2093c4&title=&width=258) # Quicker协议的其他功能 打开场景和动作设置窗口:`quicker:exesettings:`
调试运行动作:`quicker:debugaction:动作id或名称`
安装外观:`quicker:installskin:外观id`
预览动作:`quicker:previewaction:动作库动作id`
预览子程序:`quicker:previewaction:子程序id`
打开设置页:`quicker:settings:设置页id` **显示提示消息**
quicker:showmessage:消息
quicker:showmessage:success:成功消息(绿色)
quicker:showmessage:warning:警告消息(黄色)
quicker:showmessage:error:警告消息(红色)
quicker:showmessage:info:信息消息(蓝色)
quicker:showmessage:信息消息(蓝色)