【发布时间】:2016-05-24 09:26:49
【问题描述】:
我使用 C99 编写了一个简单的共享库,我想将它移植到 Windows。我的目标是提供一个已编译的 DLL,以便它可以用于使用各种旧版本 Visual Studio(以及通过 p/invoke 的 C#)构建的应用程序。
我已经设法使用 Visual Studio 2015 社区将其编译为 DLL。
但是,我得到反馈,它只能在我的机器上运行,而不能在其他机器上加载,因为它依赖于 VCRUNTIME140.DLL,它不是 Windows 的一部分。
根据我的发现,官方解决方案是告诉用户访问 microsoft.com,下载并运行 VS 可再发行包的安装程序。对我来说,这听起来像是一个非常糟糕的用户体验。这真的是解决方案吗?
我如何构建一个 DLL:
- 使用 C99,
- 与 Windows 7 及更高版本兼容(开箱即用,无需额外安装程序),
- 并且可以由使用 Visual Studio 2008 及更高版本构建的应用程序加载?
【问题讨论】:
标签: c dll visual-studio-2015 runtime c99