我有一个使用 VC++ 2010 构建的 C++ 库。我有该库的标头、导入库和 DLL。我想在我尝试使用 VC++ 2012 构建的 Windows 8 应用商店应用程序中使用此库。我的应用程序在本地计算机上运行良好,但当我尝试在远程 Windows 8 设备上运行此应用程序时,该应用程序无法加载。我究竟做错了什么?
您无法在 Windows 8 应用商店应用程序中使用使用较旧版本的 Visual Studio(早于 Visual Studio 2012)构建的 C++ 二进制文件。
原因是使用 Visual Studio 2010 构建的二进制文件将依赖于 Visual Studio 2010 中的 C++ 运行时 DLL。而应用程序的其余部分是使用 Visual Studio 2012 编写的,因此它将依赖于 C++ 运行时 DLL来自 Visual Studio 2012。后者可从 Windows 应用商店自动获取(请阅读this更多细节)。但是前者在 Windows 应用商店中不可用。此外,您的应用程序无法表达对 VC2010 运行时的依赖关系。在应用程序包中包含 VC2010 运行时 DLL 也将不起作用,因为该包将在商店上传时被拒绝。
因此,最好的选择是严格使用 Visual Studio 2012 构建 Windows 8 应用商店应用程序的所有源。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)