无法在 HoloLens2 上将本机 C++ 调试器附加到 Unity 应用程序 运行
Not able to attach native C++ Debugger to Unity App already running on HoloLens2
我有一个 IL2CPP Unity 应用程序,它使用为 HoloLens 2 构建的定制本机 DLL。
通过 Debug->[ 使用 Visual Studio 2019 和 Tools for Unity Plug-In 调试 运行 应用程序的托管 C# 代码工作正常=40=]附加 Unity 调试器。它会自动检测 HL2 上的应用 运行,我可以连接到它。
我还可以通过将其源项目添加到生成的 IL2CPP 解决方案来调试我的本机库 C++ 代码。当我按下 "Play"-Button 时,VS 构建 UWP 应用程序并将其部署到 HL2 并自动附加调试器,这使我也可以在设备上调试我的自定义本机代码 运行,这是到目前为止很棒。
但是当 VS 本机调试器在 HL2 上手动启动时,如何将它附加到应用程序?问题是,使用 "Play"-Button,它总是将整个应用程序重新部署到 HL2,即使没有进行任何代码更改 - 这个过程总是需要很长时间,这真的很烦人。
我想,它可以通过 Debug->Attach to Process 工作,但我无法连接到 HL2,既不使用其网络名称也不使用 HL2 的 IP 地址作为 连接目标 。 USB 电缆也已连接。每次尝试都失败并显示以下错误消息:
"Unable to connect to the Microsoft Visual Studio Remote Debugger named '192.168.1.21'. The Visual Studio 2019 Remote Debugger (MSVSMON.EXE) does not appear to be running on the remote computer. This may be because a firewall is preventing communication to the remote computer. Please see Help for assistance on configuring remote debugging."
Error message on trying to attach native debugger to IP
通过"Play"-Button将应用程序部署到HL2时,我识别出调试输出中提到的端口号55142:
Debugger listening port shown in the Debug Output
所以我尝试将调试器直接连接到这个端口,但这样做会导致出现不同的错误消息:
"Unable to connect to the Microsoft Visual Studio Remote Debugger named '192.168.1.21:55142'. Connection request was rejected by the remote debugger. Ensure that the remote debugger is running in 'Windows Authentication' mode."
Error message on trying to attach native debugger to IP:Port
有什么想法吗?
如果您想在 HoloLens 上调试已安装的应用程序,此文档值得一读:Debugging an installed or running app。
以下是文档中显示的用于调试未从 Visual Studio 项目部署的通用 Windows 应用程序的具体步骤:
- Go to Debug -> Other Debug Targets -> Debug Installed App Package
- Select the Remote Machine target for HoloLens or Local Machine for immersive headsets.
- Enter your device’s IP address
- Choose the Universal Authentication Mode
- The window shows both running and inactive apps. Pick the one what you’d like to debug.
- Choose the type of code to debug (Managed, Native, Mixed) Click Attach or Start
我有一个 IL2CPP Unity 应用程序,它使用为 HoloLens 2 构建的定制本机 DLL。
通过 Debug->[ 使用 Visual Studio 2019 和 Tools for Unity Plug-In 调试 运行 应用程序的托管 C# 代码工作正常=40=]附加 Unity 调试器。它会自动检测 HL2 上的应用 运行,我可以连接到它。
我还可以通过将其源项目添加到生成的 IL2CPP 解决方案来调试我的本机库 C++ 代码。当我按下 "Play"-Button 时,VS 构建 UWP 应用程序并将其部署到 HL2 并自动附加调试器,这使我也可以在设备上调试我的自定义本机代码 运行,这是到目前为止很棒。
但是当 VS 本机调试器在 HL2 上手动启动时,如何将它附加到应用程序?问题是,使用 "Play"-Button,它总是将整个应用程序重新部署到 HL2,即使没有进行任何代码更改 - 这个过程总是需要很长时间,这真的很烦人。
我想,它可以通过 Debug->Attach to Process 工作,但我无法连接到 HL2,既不使用其网络名称也不使用 HL2 的 IP 地址作为 连接目标 。 USB 电缆也已连接。每次尝试都失败并显示以下错误消息:
"Unable to connect to the Microsoft Visual Studio Remote Debugger named '192.168.1.21'. The Visual Studio 2019 Remote Debugger (MSVSMON.EXE) does not appear to be running on the remote computer. This may be because a firewall is preventing communication to the remote computer. Please see Help for assistance on configuring remote debugging."
Error message on trying to attach native debugger to IP
通过"Play"-Button将应用程序部署到HL2时,我识别出调试输出中提到的端口号55142:
Debugger listening port shown in the Debug Output
所以我尝试将调试器直接连接到这个端口,但这样做会导致出现不同的错误消息:
"Unable to connect to the Microsoft Visual Studio Remote Debugger named '192.168.1.21:55142'. Connection request was rejected by the remote debugger. Ensure that the remote debugger is running in 'Windows Authentication' mode."
Error message on trying to attach native debugger to IP:Port
有什么想法吗?
如果您想在 HoloLens 上调试已安装的应用程序,此文档值得一读:Debugging an installed or running app。
以下是文档中显示的用于调试未从 Visual Studio 项目部署的通用 Windows 应用程序的具体步骤:
- Go to Debug -> Other Debug Targets -> Debug Installed App Package
- Select the Remote Machine target for HoloLens or Local Machine for immersive headsets.
- Enter your device’s IP address
- Choose the Universal Authentication Mode
- The window shows both running and inactive apps. Pick the one what you’d like to debug.
- Choose the type of code to debug (Managed, Native, Mixed) Click Attach or Start