UWP上的UrhoSharp.Forms - 无法加载dll' mono-urho'

时间:2016-10-06 10:55:46

标签: c# xamarin.forms uwp urhosharp

我尝试使用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项目的参考:

  • Microsoft.NETCore.UniversalWindowsPlatform 5.2.2
  • Oxage.Xam.VideoPlayer 1.2.0
  • 通用Windows
  • UrhoSharp.Forms 1.1.125
  • Xamarin.Forms 2.3.2.127
  • XamarinTest(我的便携式文件夹)

我用依赖walker查看了DLL,但我怀疑它对UWP并没有什么用处。它找到了DirectX DLL而不是UWP运行时,可能是由于路径不相同。

有什么想法吗?

2 个答案:

答案 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工作!

¯\ _(ツ)_ /¯