Hololens无法使用错误“找不到Dll”来锁定本机dll

时间:2018-10-19 11:41:06

标签: c# hololens

我尝试构建一个非常简单的本机dll,可以通过带有PInvoke的简单UWP c#应用程序调用该dll。 UWP应用程序可以正常运行在Windows 10计算机上,没有任何问题,但是当我将UWP应用程序部署到Hololens时,它始终会失败,并显示错误“找不到Dll”。我已经在Hololens中测试了RS4和RS5,并获得了相同的结果。

复制步骤非常简单。

  1. 创建一个本地C ++ DLL项目(我使用的是VS 2017社区版本),并编写一些代码,例如返回1 + 2,例如:

    extern "C" {
    
        __declspec(dllexport) int __stdcall add12() {
    
        return 1 + 2;
        }
    }
    
  2. 创建一个空白的UWP项目,以使用PInvoke调用DLL函数:

    public class WrapperClass
    {
    
        [DllImport("CPPDLL", CallingConvention = CallingConvention.StdCall)]
        public static extern int add12();
    
    }
    
    
    public sealed partial class MainPage : Page
    {
    
        public MainPage()
        {
    
            this.InitializeComponent();
    
            int result = WrapperClass.add12();
    
            Debug.WriteLine("add 12 = " + result);
    
        }
    }
    
  3. 将本机DLL添加到项目中,并在Win10计算机和Hololens上构建并运行UWP应用程序,您会注意到Win10计算机将成功运行,而Hololens将无法运行。 p>

我们非常感谢您的帮助。

0 个答案:

没有答案