如何使用Unified Remote脚本启动Windows Metro应用程序

我正在尝试制作一款适用于 Windows 8.1 的统一远程服务器自定义遥控器。 示例脚本使用 os.start(command)。对于像 calc 这样的东西它有效,但我正在尝试启动一个“netflix://”的 Metro 应用,Lua 似乎无法接受它-我认为它没有考虑到前面的斜杠。 有什么办法可以让 Lua 在 Windows 中启动 Metro 应用吗?谢谢。

点赞
用户1442917
用户1442917

假设你的意思是 os.execute() 命令,要运行打开文件并根据协议关联运行的命令,你需要使用 start 命令:

os.execute("start http://google.com")

如果你需要将参数用引号括起来,那么请确保第一个参数是一对空引号:

os.execute([[start "" "netflix://..."]])
2015-05-19 22:11:53
用户2634561
用户2634561

对于 os.start(),似乎你必须传递整个命令的路径。Unified Remote API 指出它应该匹配已安装的应用程序,但我相信这可能只适用于在PATH中有二进制文件的应用程序,这就是为什么它们 calc 的示例能够正常工作的原因。

在这种情况下,知道 start 直接从 PowerShell 中工作良好,这个命令符合我们的要求:

os.start("C:\\WINDOWS\\system32\\cmd.exe", "/c", "start", "netflix:");

因为这是在搜索使用 Lua 启动 Unified Remote 的 Windows10 应用程序时的最高的谷歌搜索结果所以回答这个古老的问题。

顺便说一下,由于 Netflix Win10 应用程序的限制,我最终只是打开了 Firefox 并给它 Netflix 的 URL。假设默认安装:

os.start("C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe", "https://www.netflix.com");
2023-01-15 13:28:24