0

我正在 Unity 2017.4 中开发混合现实工具,该项目通过编辑器中的远程仿真和编辑器本身在 Hololens 上运行,该项目从 Visual Studio 2017 构建并部署到模拟器和设备。但是当程序运行时UnityPlayer.dll 抛出两个断点之一,0x0000003 或 0x0000005。这是我的调用堆栈:

UnityPlayer.dll!623d51fb() 未知

[下面的帧可能不正确和/或丢失,没有为 UnityPlayer.dll 加载符号]

UnityPlayer.dll!623d5703() 未知

UnityPlayer.dll!623d58d7() 未知

UnityPlayer.dll!61b1d66d() 未知

...

UnityPlayer.dll!630b22e2() 未知

UnityPlayer.dll!630b2444() 未知

UnityPlayer.dll!630bed92() 未知

[外部代码]

它还说,当抛出这些错误并且我将调试器设置为混合或本机时,找不到 UnityPlayer_UAP_x86_debug_dotnet.pdb。在管理它只是抛出这 2 个错误,目前 0x0000005 似乎更频繁地发生。

感谢 Josh Peterson 的评论,这里有一个希望更好的调用堆栈:

UnityPlayer.dll!OutOfMemoryError() 未知

UnityPlayer.dll!MemoryManager::Allocate(unsigned int,unsigned int,struct MemLabelId const &,enum AllocateOptions,char const *,int) 未知

UnityPlayer.dll!MemoryManager::Reallocate(void *,unsigned int,unsigned int,struct MemLabelId const &,enum AllocateOptions,char const *,int) 未知

UnityPlayer.dll!realloc_internal(void *,unsigned int,unsigned int,struct MemLabelId const &,enum AllocateOptions,char const *,int) 未知

UnityPlayer.dll!dynamic_array::reserve(unsigned int) 未知

UnityPlayer.dll!DecompressSubprogramBlob() 未知

UnityPlayer.dll!Shader::Transfer >(class StreamedBinaryRead<0> &) 未知

...

UnityPlayer.dll!Platform::Details::__abi_FunctorCapture,void,struct Windows::Foundation::IAsyncAction ^>::Invoke(struct Windows::Foundation::IAsyncAction ^) 未知

UnityPlayer.dll!Windows::System::Threading::WorkItemHandler::[Windows::System::Threading::WorkItemHandler::__abi_IDelegate]::__abi_Windows_System_Threading_WorkItemHandler___abi_IDelegate____abi_Invoke(struct Windows::Foundation::IAsyncAction ^) 未知

threadpoolwinrt.dll!734c4c6f() 未知

[下面的帧可能不正确和/或丢失,没有为 threadpoolwinrt.dll 加载符号]

[外部代码]

4

2 回答 2

1

Unity 确实发布了调试符号,您至少应该能够从本机调用堆栈中获取函数名称。有关如何连接到 Unity 符号服务器的信息,请参阅此文档:https ://docs.unity3d.com/Manual/WindowsDebugging.html

于 2018-05-11T11:56:51.507 回答
0

需要检查的一些事项:

  • 在 Visual Studio 中,尝试在 Release 配置而不是 Debug 中构建。
  • 在 Unity 中,尝试在 WSA 的播放器设置中更改脚本后端。.NET 后端的运气比 IL2CPP 后端好。
  • 更新 VS2017。我们遇到了一个特定版本的 VS2017 破坏版本的问题(尽管我不记得是哪一个)。
于 2018-05-10T15:33:53.673 回答