无法将本机C++调试器附加到已经在HoloLens2上运行的Unity应用上。

问题描述 投票:0回答:1

我有一个IL2CPP Unity App,它使用为HoloLens 2构建的定制的本地DLL。

使用Visual Studio 2019与Tools for Unity Plug-In调试正在运行的App的托管C#代码就能正常工作,通过 调试->附加Unity调试器. 它能自动检测到运行在HL2上的App,我可以连接到它。

我也可以通过将原生库C++代码添加到生成的IL2CPP解决方案中进行调试。当我按下 "Play "按钮时,VS会将UWP应用构建并部署到HL2上,并自动附加Debugger,这让我可以调试在设备上运行的自定义本地代码,到目前为止,这很棒。

但是,当我在HL2上手动启动VS原生调试器时,我如何将它连接到App上呢?问题是,使用 "播放 "按钮,它总是重新部署整个应用程序到HL2,即使代码没有变化--这个过程总是需要很长的时间,这真的很烦人。

我想,它可以通过 调试->附于进程但我无法连接到HL2,既不能使用它的网名,也不能使用HL2的IP地址,因为它的IP地址是 连接目标. USB电缆也已连接。每次尝试都会失败,出现以下错误信息。

"无法连接到名为'192.168.1.21'的Microsoft Visual Studio远程调试器。 Visual Studio 2019 远程调试器 (MSVSMON.EXE) 似乎没有在远程计算机上运行。这可能是因为防火墙阻止了与远程计算机的通信。请参阅 "帮助 "以获得有关配置远程调试的帮助。"

在尝试将本地调试器连接到IP时的错误信息

当通过 "播放"-按钮将App部署到HL2时,我认出了调试输出中提到的55142端口。

调试输出中显示的调试器监听端口。

所以我试着将调试器直接连接到这个端口,但这样做会导致不同的错误信息。

"无法连接到名为'192.168.1.21:55142'的Microsoft Visual Studio远程调试器。 连接请求被远程调试器拒绝。确保远程调试器在'Windows认证'模式下运行。"

在尝试将本地调试器连接到IP:端口时的错误信息

有什么想法吗?

visual-studio unity3d debugging hololens il2cpp
1个回答
0
投票

如果你想在HoloLens上调试已安装的App,这个文档值得一读。调试已安装或正在运行的应用程序.

以下是文档中显示的调试Universal Windows应用程序的具体步骤,该应用程序没有从Visual Studio项目中部署就安装了。

  1. 转到Debug -> Other Debug Targets -> Debug Installed App Package。
  2. 为HoloLens选择远程机器目标,为沉浸式耳机选择本地机器。
  3. 输入您设备的 IP 地址
  4. 选择通用认证模式
  5. 窗口会显示正在运行的和不活动的应用程序。选择一个你想调试的应用程序。
  6. 选择要调试的代码类型(Managed, Native, Mixed)点击附加或开始。
© www.soinside.com 2019 - 2024. All rights reserved.