Debugging UWP应用程序的自定义探查器

Debugging UWP应用程序的自定义探查器,debugging,profiling,uwp,profiler,.net-core,Debugging,Profiling,Uwp,Profiler,.net Core,我试图在运行时动态重写IL代码。虽然这对于.NET framework应用程序来说有很好的文档记录,但对于UWP应用程序,我找不到任何类似的文档 因为我有一套自动化的功能测试,所以我需要设置分析环境并以编程方式启动一个示例应用程序 尝试1 解释如何启用调试器(据我所知,探查器本质上是调试器)并以编程方式启动UWP应用程序 因此,我从引导程序中调用IPackageDebugSettings::EnableDebugging,然后调用IAApplicationActivationManager::A

我试图在运行时动态重写IL代码。虽然这对于.NET framework应用程序来说有很好的文档记录,但对于UWP应用程序,我找不到任何类似的文档

因为我有一套自动化的功能测试,所以我需要设置分析环境并以编程方式启动一个示例应用程序

尝试1 解释如何启用调试器(据我所知,探查器本质上是调试器)并以编程方式启动UWP应用程序

因此,我从引导程序中调用
IPackageDebugSettings::EnableDebugging
,然后调用
IAApplicationActivationManager::ActivateApplication

无论如何,我不知道如何实现调试器。使用以下参数调用调试器(可执行文件):

-p 3836 -tid 6180
每次跑步时,两个数字都会变化。虽然
p
似乎是已调试进程的进程id,但我不知道
tid
可能是什么,也不知道如何使用参数来控制已调试的应用程序(注册模块加载事件、触发重新JIT等)

尝试2 我在Core CLR repo上找到了关于为Core CLR应用程序启用评测API的内容。该问题包含对样本探查器回购的修改

因此,核心CLR应用程序的评测基本上与.NET framework应用程序的评测方式相同(有一些限制)。从我的引导程序中,我尝试设置适当的环境变量(即
CORECLR\u启用\u评测
CORECLR\u评测器
CORECLR\u评测器路径
),然后是
iaapplicationactivationmanager::ActivateApplication
但是,探查器没有连接

我很确定,一般来说,可以分析UWP应用程序,因为JetBrains的dotTrace可以做到这一点

有什么想法吗