代码之家  ›  专栏  ›  技术社区  ›  bobber205

Visual C++ Express 2008的静态运行时库链接

  •  12
  • bobber205  · 技术社区  · 15 年前

    如何告诉VisualC++Express 2008静态链接运行库而不是动态链接?我的前男友目前不在没有安装虚拟机的电脑上运行,我想改变这一点。:)

    4 回复  |  直到 14 年前
        1
  •  9
  •   ironic    15 年前

    对不起,我没有VC++Express来测试,但是在标准版中,我使用ProjtProjksProtots & Gt;配置属性-gt;C/c++ +gt;代码生成-&运行库。DLL和DLL调试用于动态链接。

        2
  •  7
  •   Nick Guerrera    15 年前

    你100%确定要这样做吗?请考虑,如果这样做,并且在运行库中发现安全漏洞,Microsoft将无法通过Windows Update修补应用程序。

    另一个解决方案是将VisualC++运行时重新分配到应用程序中。它安装非常快,不需要Visual Studio。还需要注意的是,不应分发针对调试运行库链接的代码,因为这些库确实需要Visual Studio。看到这个 blog post 有关打包可再发行软件的详细信息。

    编辑 那就由你决定了。我的观点很简单,您不应该仅仅基于用户必须安装“某种vs”的想法而忽略动态链接,这是不正确的。

        3
  •  3
  •   Community CDub    8 年前

    请参阅此问题的答案: How do I make a fully statically linked .exe with Visual Studio Express 2005 ? . 它是针对VS2005 Express的,但答案仍然有效。

    对于C运行时,转到项目 设置,选择C/C++ +代码 一代人。更改“运行时” 库'设置为'多线程' 而不是“多线程DLL”。

    如果您使用任何其他库 你可能需要告诉链接器 忽略动态链接的CRT 明确地。

        4
  •  0
  •   eriohl    14 年前

    您可以在目标机器上安装c runtime redist,并且您的可执行文件也可以在那里运行,动态链接c runtime。

    (哦,对不起,已经提到过了)。