修复:在 Visual Studio 2008 SP1 中打开某些编译器选项编译或运行的应用程序时,您将收到一条错误消息或异常


症状


在 Microsoft Visual Studio 2008 Service Pack 1 (SP1),将发生以下问题之一。

症状 1

编译的项目中包含/arch:SSE(2)选项时, /fp︰ 除选项,您将收到以下错误消息︰
命令行错误 d8016 错误: / SSE2 弧:' 和 ' / fp︰ 除命令行选项不兼容。

症状

当您运行 Visual C++ 应用程序,包含未初始化浮点,浮点异常发生。此外,您可能会收到以下错误消息︰
0xC0000090︰ 无效的浮点运算
如果以下条件为 true,将出现此问题:
  • 添加/fp︰ 除编译器选项列表的选项,以禁用浮点异常。

  • 源代码包含未初始化的浮点变量。
  • 未初始化浮点变量位于内存中包含信号的非数字 (NaN) 值。

现象 3

通过使用/O2编译器选项或/Ox编译器选项编译非托管 Visual C++ 应用程序时,您收到类似于以下异常︰
未处理的异常时在文件名的 0x00401342: 0xC0000090︰ 无效的浮点运算。
备注:
  • 在不同的时间可能会更改编号 0x00401342。
  • 当您打开/Od编译器选项或/O1编译器选项,则不会生成异常。

解决方案


修补程序信息

受支持的修补程序现已从 Microsoft 推出。但是,它被用于纠正本文中描述的问题。它仅应用于正经历此特定问题的系统。此修补程序可能会接受进一步的测试。因此,如果这个问题没有对您造成严重的影响,我们建议您等待包含此修复程序的下一步的 Visual Studio 2008 service pack。

要立即解决此问题,请联系 Microsoft 客户支持服务,以获取此修复程序。Microsoft 客户支持服务的电话号码以及有关支持费用的信息的完整列表,请访问下面的 Microsoft 网站:注意: 在特殊情况下,如果 Microsoft 支持专业人员确定某个特定的更新能够解决您的问题,可能取消的通常情况下收取的电话支持服务费用。照常收取支持费用将应用于其他支持问题和对于特定更新无法解决的问题。

系统必备组件

您必须具有要应用此修补程序的安装的 Visual Studio 2008 Service Pack 1。

重启要求

应用此修补程序后,不需要重新启动计算机。

修补程序替换信息

此修补程序不替换任何其他修补程序。

文件信息

此修补程序的全球版本具有的文件属性 (或更新的文件属性) 在下表中列出。日期和为这些文件的时间以协调世界时 (UTC) 列出。当您查看文件信息时,它将转换为本地时间。要了解 UTC 与本地时间之间的时差,请使用控制面板中的日期和时间项中的时区选项卡。
文件名称文件版本文件大小日期时间平台
C2.dll15.0.30729。 40562,361,6562009 年 03 月 03-10:46x86
Cl.exe15.0.30729.4056126、 7762009 年 03 月 03-10:46x86
Clui.dll15.0.30729.405619 2,3282009 年 03 月 03-10:46x86
Clui.dll15.0.30729.405620 9,7362009 年 03 月 03-10:46x86
Clui.dll15.0.30729.405627 7,3042009 年 03 月 03-10:46x86
Clui.dll15.0.30729.405627 9,8802009 年 03 月 03-10:46x86
Clui.dll15.0.30729.405639 1,4962009 年 03 月 03-10:46x86
Clui.dll15.0.30729.405639 2,0082009 年 03 月 03-10:46x86
Clui.dll15.0.30729.405645 7,5442009 年 03 月 03-10:46x86
Clui.dll15.0.30729.405646 42002009 年 03 月 03-10:46x86
Clui.dll15.0.30729.405646 7,2722009 年 03 月 03-10:46x86
Clui.dll15.0.30729.405647 2,3922009 年 03 月 03-10:46x86
Link.exe9.0.30729.4056799、 04803-Mar-200910:46x86

状态


Microsoft 已经确认这是“适用于”一节中列出的 Microsoft 产品中的问题。

详细信息


如果使用 Visual Studio 2008 时,会出现这些问题,请使用下面的 Microsoft 知识库文章中描述的修补程序︰
955025修复︰ 错误消息当您编译项目中包含 /arch:SSE(2) 选项和 /fp︰ 除非 Microsoft Visual Studio 2008 中的选项:"d8016 错误的命令行错误: / SSE2 弧:' 和 ' / fp:except'command-行选项不兼容。"

956089解决︰ 浮点异常发生时应用程序包含未初始化的浮点变量和编译使用 /fp︰ 期望在 Visual Studio 2008 中的选项

有关软件更新术语的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
用于描述 Microsoft 软件更新的标准术语的824684说明