Eld*_*Mor 3 c++ winapi msvcrt visual-studio-2010
我有一个复杂的应用程序,无法与 CRT 静态链接,但另一方面不需要安装管理员权限(因为它没有执行任何需要它的操作)。安装 CRT 以便动态链接的正常方法是安装 MS 可分发 CRT,但它需要管理员权限。
我正在考虑简单地将 MSVCRT100 DLL 放在与可执行文件相同的目录中,以缓解该问题,但我不确定这种做法是否有任何缺点,因为在我看到的任何地方都没有宽恕或谴责这种做法。除了遵循静态链接与安装可分发文件的通常做法之外,还有什么理由不这样做?
简短的回答是可以。
它甚至是微软网站上描述的部署应用程序的选项之一http://msdn.microsoft.com/en-us/library/dd293565.aspx
\n\n\n复制相应的 MFC 和 C 运行时 (CRT) 库文件\xe2\x80\x94,例如,对于 x86 平台和 Unicode 支持,请从 \\Program Files\\Microsoft Visual Studio 10.0\ 复制 mfc100u.dll 和 msvcr100.dll \VC\\redist\\x86\\\xe2\x80\x94,然后将它们粘贴到 MFC 项目的 \\Release\\ 文件夹中。有关您可能需要复制的其他文件的详细信息,请参阅确定要重新分发的 DLL。
\n
\n缺点是可再发行软件包由 Microsoft 安全修复程序更新。因此,如果部署了安全修复程序,您的应用程序将不会使用它,并且可能仍然不安全。我不是一个忠实的粉丝,但这是winsxs目录的想法,并且从Visual 7.0开始就体现出来,它“帮助”你的应用程序始终使用最好的版本。
| 归档时间: |
|
| 查看次数: |
684 次 |
| 最近记录: |