我正在使用第三方.NET库,它本质上是c库的包装器 . 这个库不是NuGet包 . 我只有不同体系结构的C库(ARM,x86,x64)和托管库 .
我在项目中引用了托管库,并创建了Post-build事件,将正确的C库复制到build目录:
xcopy / Y“$(ProjectDir)ExternalReferences \ NoesisGUI \ uwp _ $(Platform)* . *”“$(TargetDir)”
我遇到的问题是,在部署时,此C库未复制到 AppX 文件夹,因此我收到System.DllNotFoundException .
在应用程序包中包含特定于体系结构的文件的正确方法是什么?
这是带有C库的项目文件夹结构:
1 回答
有更简单地将's no need for scripting, it'添加为项目的
Content
.首先,将ExternalReferences文件夹移出项目之外 . 父文件夹(默认情况下是您拥有.sln文件的位置)应该可以 .
手动编辑.csproj文件并在结束
</Project>
标记之前添加以下内容:这将包括项目中的Noesis.dll文件,考虑到它当前正在构建的平台 .
Note: 上面我使用了".."来使用父文件夹,如果你把文件夹移到其他地方,请务必更改它!