gpt4 book ai didi

.net - 在 UWP 应用程序包中包含体系结构特定文件

转载 作者:行者123 更新时间:2023-12-04 17:52:37 25 4
gpt4 key购买 nike

我使用的是第 3 方 .NET 库,它本质上是对 C++ 库的包装。这个库不是 NuGet 包。我只有适用于不同架构(ARM、x86、x64)的 C++ 库和托管库。

我在我的项目中引用了托管库,并且我创建了将正确的 C++ 库复制到构建目录的构建后事件:

xcopy /Y "$(ProjectDir)ExternalReferences\NoesisGUI\uwp_$(Platform)*.*" "$(TargetDir)"

我遇到的问题是部署时此 C++ 库未复制到 AppX 文件夹,因此我得到 System.DllNotFoundException

在应用程序包中包含架构特定文件的正确方法是什么?

这是带有 C++ 库的项目文件夹结构:

Project folder structure with C++ libraries

最佳答案

不需要编写脚本,将它们添加为 Content 会更容易项目的。

首先,将您的 ExternalReferences 文件夹移出项目。父文件夹(默认情况下是您拥有 .sln 文件的位置)应该没问题。

手动编辑 .csproj 文件并在结尾处添加以下内容 </Project>标签:

<ItemGroup>
<Content Include="..\ExternalReferences\NoesisGUI\uwp_$(Platform)\Noesis.dll">
<Link>Noesis.dll</Link>
</Content>
</ItemGroup>

这将在项目中包含 Noesis.dll 文件,同时考虑到它当前正在构建的平台。

注意:上面我使用“..\”来使用父文件夹,如果您将文件夹移动到其他地方,请务必更改它!

关于.net - 在 UWP 应用程序包中包含体系结构特定文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43362734/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com