使用一个WPF程序起调一个UWP程序

由于种种原因吧,我需要使用一个WPF程序起调一个UWP程序,下面总结一下,给自己个备份。

启动UWP程序的关键是协议启动

给我们的UWP应用添加一个协议,like this:

然后使用协议启动该UWP有一下几种方式:

1. 使用UWP的Launcher API

// Create the URI to launch from a string.
var uri = new Uri(protocolname:);

// Launch the URI.
bool success = await Windows.System.Launcher.LaunchUriAsync(uri);

这里涉及到一个问题:怎么在WPF中使用UWP的API,可参考链接

2.使用PackageManager,也是UWP的API

//var manager = new PackageManager();
//var p = manager.FindPackagesForUser(, PackageId);
//var ls = await p.ToList()[0].GetAppListEntriesAsync();
//foreach (var item in ls)
//{
// await item.LaunchAsync();
//}

这里感谢下vbfool大神的悉心指导!

其中的PackageId是包系列名(PackageFamilyName)

3.使用Process.Start(new processstartinfo(protocolname:));

4.使用命令行

like:>start myapplication:protocol-parameter,参考接受参数

链接中还介绍了另外一种方式:启动激活(不支持命令行参数),在此不再赘述.

写了几个月的WPF发现把UWP的东西忘完了,哎,如此弱鸡!

相关文章

在要实现单例模式的类当中添加如下代码:实例化的时候:frmC...
1、如果制作圆角窗体,窗体先继承DOTNETBAR的:public parti...
根据网上资料,自己很粗略的实现了一个winform搜索提示,但是...
近期在做DSOFramer这个控件,打算自己弄一个自定义控件来封装...
今天玩了一把WMI,查询了一下电脑的硬件信息,感觉很多代码都...
最近在研究WinWordControl这个控件,因为上级要求在系统里,...