2016-08-15 106 views
1

我试图在Visual Studio 2017中的通用Windows平台应用中包含第三方DLL。具体来说,我下载了包含.lib和.dll的Autodesk FBX SDK(Visual Studio 2015 UAP版本:http://usa.autodesk.com/adsk/servlet/pc/item?id=24746731&siteID=123112)文件为我的平台。在UWP应用程序中包含第三方DLL - 一步一步?

我将相关的.lib(x86/release或x86/debug)添加到Visual Studio中的其他依赖项,但我不确定如何使应用程序知道该DLL。构建应用程序包失败并尝试直接运行该程序会在运行时失败,这大概是在DLL无法加载时发生的。

我花了很多时间阅读UWP,但我完全被它的复杂性和不透明度所困惑。我假设我需要以某种方式:

  1. 将DLL复制到我的Visual Studio项目目录。但是哪里?我如何让Visual Studio承认它?我可以将它作为解决方案资源管理器中的Document类型的内容添加,但它似乎没有被构建拾取。

  2. 我已经被MS支持(https://social.msdn.microsoft.com/Forums/windowsapps/en-US/26013e5e-3ff1-44a0-8797-0474dabd12d0/including-dlls-in-a-uwp-application-in-visual-studio?forum=wpdevelop)告知我需要将它作为包依赖项添加到Package.appxmanifest文件中,但我找不到任何示例。

只是要清楚:我没有这个DLL的源代码。很确定这是一个UWP构建的DLL。我只是希望它能够被我的项目识别并在创建时导出到应用程序包中。是的,有一个静态库我可以链接到该作品,但迟早,我将需要一个只有DLL的库,并将不得不学会如何正确。我会认为这是在MSDN指导如何做到这一点,但搜索的时间已经产生了什么:(

谢谢

巴特

+1

如果它只是一个你想使用的DLL,然后右键单击你的项目在解决方案资源管理器 - >添加 - >从那里添加引用浏览您的DLL。 –

回答

2

祖阿曼夏尔马:谢谢你,但添加引用没有按”。牛逼出现工作(它不喜欢的DLL文件),但我却设法得到它的工作如下:

  1. “添加 - >现有项...”到项目的根
  2. 权。点击该dll文件,选择属性,一个d通过将内容设置为True将文件标记为内容。

就是这样。奇怪的是,FBX SDK文档声称必须定义FBXSDK_DLL,但这样做会导致编译失败。

此外,有些恼人的是,DLL文件必须在项目根目录中。它不能被移动到一个子文件夹(比如Assets /或DLL /或其他)。也许有一种方法可以在清单中指定路径?

无论哪种方式,只需添加它并将其标记为内容不会在清单文件中创建依赖项,正如我被告知需要在MSDN论坛上一样。

0

当你在你的解决方案中添加一些第三方项目(dll,比如说TreeViewControl)时,我自己就想出了它。

您需要右键单击您的项目 - >添加 - >参考,进入项目,解决方案,选中第三方项目名称左侧的框(本例中为TreeViewControl)并重新编译。

相关问题