Sor*_*ra. 11 command-line command-line-arguments microsoft-metro windows-8 windows-10
我需要一种从命令行在Metro应用程序中打开文件的方法.
到目前为止,我已经弄清楚如何从命令行启动应用程序而不使用任何第三方脚本
explorer shell:AppsFolder\Microsoft.Reader_8wekyb3d8bbwe!Microsoft.Reader
Run Code Online (Sandbox Code Playgroud)
但我还没弄清楚如何包含文件名.
发射
explorer shell:AppsFolder\Microsoft.Reader_8wekyb3d8bbwe!Microsoft.Reader example.pdf
Run Code Online (Sandbox Code Playgroud)
只需打开一个默认的资源管理器窗口.
有关如何在没有任何第三方工具/ cmdlet /等的情况下完成此任务的Windows 8专家的任何想法?
注意:事实上我使用的是Windows 10,但我想如果有一种Windows 8/8.1的方法,那么它也适用于10.
如果您仍在寻找答案,那么在metro应用程序中打开文件的最佳方法是使用像普通应用程序协议那样的执行字符串.执行字符串如下所示:
bingnews:[arguments, can be left blank.]
microsoftvideo:[arguments, can be left blank.]
netflix:[arguments, can be left blank.]
Run Code Online (Sandbox Code Playgroud)
因此,要启动netflix,就像在Start netflix:命令行中输入一样简单.
要查找应用程序的执行字符串,请转到此处:控制面板\程序\默认程序\设置关联
可在此处找到更多信息和示例.
http://windowsitpro.com/windows-8/opening-windows-8-apps-command-prompt-or-script
请注意:要打开没有协议的应用程序(一个未列在注册表中或"设置关联"下),请使用OP的方法:
explorer shell:AppsFolder\[appuid]![appfullname]
应用程序UID是没有版本号的文件夹名称.例如,
4DF9E0F8.Netflix_ 2.11.0.8_x64 __mcm4njqhnhss8
变
4DF9E0F8.Netflix_mcm4njqhnhss8
应用程序全名是[App author].[App name]例如4DF9E0F8.Netflix.4DF9E0F8是作者,而Netflix就是这个名字.
把它们放在一起得到
explorer shell:AppsFolder\4DF9E0F8.Netflix_mcm4njqhnhss8!4DF9E0F8.Netflix
如果应用程序是默认处理程序,那么您只需启动文件或协议即可。没有一种好的内置方法可以从命令行将文件启动到非默认处理程序中。
Windows 应用商店应用程序并非设计为从命令行运行,并且没有直接的方法可以从命令行启动它们。处理特定文件或协议的应用程序通过FileActivatedEventArgs或ProtocolActivatedEventArgs接收它们而不是命令行参数接收它们
您可以编写一个启动器应用程序,它使用 CLSID_ApplicationActivationManager 的IApplicationActivationManager来ActivateForFile特定应用程序。
| 归档时间: |
|
| 查看次数: |
7154 次 |
| 最近记录: |