我已经构建了一个UWP应用程序和一个WPF应用程序,在同一个解决方案中。我正在使用FullTrustProcessLauncher类从UWP应用程序启动WPF应用程序。我还使用AppServiceConnection类允许这两个应用程序相互通信。在基本场景下,这一切都很正常。但一旦我开始开发超出我可以找到的示例的WPF应用程序,我就需要在Visual Studio中开始调试。
我尝试了以下方法:
- 在WPF代码中设置断点。
结果: 我没有期望它能够工作,并且它确实没有工作。
- 在UWP启动WPF进程后附加到正在运行的WPF进程。
结果: 当选择运行中的WPF进程时,“附加”按钮是灰色的。
- 我开始调查新的VS扩展“桌面桥接调试项目”,并按照示例和文档进行操作。
结果: 我能找到的所有示例似乎都围绕着将现有的WPF应用程序转换为UWP。因此,我认为这不是一个解决方案。我可能错了......
以下是从UWP应用程序启动WPF应用程序的相关代码:
int messageNumber;
private async void Button_Click(object sender, Windows.UI.Xaml.RoutedEventArgs e)
{
if (this.messageNumber == 0)
{
await FullTrustProcessLauncher.LaunchFullTrustProcessForCurrentAppAsync();
}
this.messageNumber++;
await AppServiceManager.SendMessageAsync(
$"Message number {this.messageNumber}");
}
如我之前提到的,目前我只是按照微软的示例进行操作。我希望最终能够添加更复杂的代码,并能够进行调试。
除此之外,我还能以何种方式获取从UWP应用程序启动的WPF应用程序的调试功能呢?
谢谢!