在阅读WP8 C++ project template时,我看到了
Windows Phone空动态链接库
用于为Windows创建本机动态链接库的项目 手机应用
Windows Phone空静态库
用于为Windows Phone创建本机静态库的项目 应用
什么是静态库和动态链接库对WP8意味着什么?
假设我有我的Windows库源代码(例如openssl),我是否需要转换为WP8静态库才能被WP8应用程序使用?
无论我使用WP8静态链接库还是动态链接库,我必须将它们包装在WP8运行时组件中以便我的应用程序使用,我是对的吗?
答案 0 :(得分:0)
在基本级别,静态和动态库与任何其他Windows环境相同(请参阅this other SO question for more clarification)。
对于WP8应用程序,您需要生成:
对于1.您需要在WP8运行时组件中包含静态.lib
或.dll
,以供.NET端使用。
对于2.看起来你最终建立了一个传统的.exe
。在这种情况下,您会以正常方式直接链接到.lib
或.dll
。 (我对这个不太熟悉,所以可能会遗漏一些细微之处)。
在任何情况下,如果您拥有VS中的所有源代码并引用构建所需的.lib
或.dll
的项目,而不是引用二进制文件本身,则更容易链接所有内容。
通过这种方式,您可以确保构建所有代码以针对正确的运行时环境(使用正确的CPU架构来定位Phone API)。此外,VS应该自动将所有依赖项添加到最终的XAP包中。