我尝试使用Xamarin.Forms嵌入一个Urho应用程序,其中包含一些在便携式项目中定义的通用UI。
它在Android上工作,所以很不错!
Xamarin UrhoSharp功能样本适用于UWP,但用户界面并非跨平台,所以我想尽可能避免使用。
在UWP x86 / 32位上,这似乎是唯一受支持的配置(?),我得到了这个例外:
"无法加载DLL' mono-urho':找不到指定的模块。 (HRESULT异常:0x8007007E)"
at Urho.Sdl.SDL_SetMainReady()
at Urho.UWP.UrhoSurface.Run(Type appType, String[] customAssetsPaks, ApplicationOptions opt)
at Urho.Forms.UwpSurfaceRenderer.UrhoLauncher(Type type, ApplicationOptions opts)
at Urho.Forms.UrhoSurface.<Show>d__4`1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
at XamarinTest.SessionPage.<OnAppearing>d__13.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.AsyncMethodBuilderCore.<>c.<ThrowAsync>b__6_0(Object state)
at System.Threading.WinRTSynchronizationContext.Invoker.InvokeCore()
mono-urho.dll位于/ bin / x86 / debug(从包中复制......)
我对UWP项目的参考:
我用依赖walker查看了DLL,但我怀疑它对UWP并没有什么用处。它找到了DirectX DLL而不是UWP运行时,可能是由于路径不相同。
有什么想法吗?
答案 0 :(得分:1)
我遇到了类似的问题,即urhosharp UWP功能样本项目(https://github.com/xamarin/urho-samples/tree/master/FeatureSamples/UWP)的构建未更改。
只有在本地计算机/模拟器上运行才会加载,针对手机模拟器运行会导致您引用相同的异常。
通过缺少子依赖来解决我的问题;项目SDK参考: 适用于通用Windows平台应用程序的Visual C ++ 2015 Runtime
添加参考 - &gt;通用Windows - &gt;扩展程序 - &gt; “适用于通用Windows平台应用程序的Visual C ++ 2015运行时”
HTH
答案 1 :(得分:0)
我的笔记本电脑上有一个待处理的Windows 10更新,因为它已关闭并在夜间断开连接,因此从未安装过。
安装失败(至1607),然后Windows回滚更新。
然后Urho再次开始在UWP工作!
¯\ _(ツ)_ /¯