การแก้ไข: คุณได้รับข้อผิดพลาด หรือข้อยกเว้นเมื่อคุณทำการคอมไพล์ หรือเรียกใช้โปรแกรมประยุกต์ที่มีตัวเลือกของคอมไพเลอร์บางตัวที่เปิดอยู่ใน Visual Studio 2008 SP1


อาการ


ใน Microsoft Visual Studio 2008 Service Pack 1 (SP1), หนึ่งปัญหาต่อไปนี้เกิดขึ้น

อาการ 1

เมื่อคุณทำการคอมไพล์โครงการที่ประกอบด้วยตัวเลือก/arch:SSE(2)และ/fp: ยกเว้นตัวเลือก คุณได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้:
ข้อผิดพลาดของบรรทัดคำสั่ง D8016:'/ หา: SSE2' และ ' / fp: ยกเว้น ' ตัวเลือกบรรทัดคำสั่งไม่เข้ากัน

อาการ 2

เมื่อคุณเรียกใช้โปรแกรมประยุกต์ Visual C++ ที่ประกอบด้วยการเตรียมใช้งาน floating-point เกิดข้อยกเว้นที่มีจุดทศนิยม นอกจากนี้ คุณอาจได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้:
0xC0000090: การดำเนินการข้อมูลเลขทศนิยมไม่ถูกต้อง
ปัญหานี้เกิดขึ้นหากมีเงื่อนไขต่อไปนี้:
  • คุณเพิ่มการ/fp: ยกเว้นตัวเลือกลงในรายการตัวเลือกของคอมไพเลอร์เมื่อต้องการปิดใช้งานข้อยกเว้นที่จุดทศนิยม

  • รหัสแหล่งที่มาประกอบด้วยตัวแปรข้อมูลเลขทศนิยมที่เตรียมใช้งาน
  • เตรียมใช้งานตัวแปรทศนิยมจะอยู่ในหน่วยความจำที่ประกอบด้วยค่าไม่ใช่ตัวเลข (NaN) signaling

อาการ 3

เมื่อคุณคอมไพล์แอพลิเคชัน Visual C++ ไม่มีการจัดการ โดยใช้ตัวเลือกของคอมไพเลอร์/O2หรือตัวเลือกของคอมไพเลอร์/Oxคุณได้รับข้อผิดพลาดที่คล้ายกับต่อไปนี้:
ไม่ได้จัดการข้อยกเว้นที่ 0x00401342 ในfile_name: 0xC0000090: การดำเนินการไม่ถูกต้องในจุดทศนิยม
หมายเหตุ
  • หมายเลข 0x00401342 อาจเปลี่ยนแปลงในเวลาอื่น
  • ไม่มีสร้างข้อยกเว้นเมื่อคุณเปิดใช้งานตัวเลือกของคอมไพเลอร์/Odหรือตัวเลือกของคอมไพเลอร์/O1

การแก้ปัญหา


ข้อมูลโปรแกรมแก้ไขด่วน

โปรแกรมแก้ไขด่วนจะพร้อมใช้งานได้ในขณะนี้จาก Microsoft อย่างไรก็ตาม มุ่งหวังเพื่อแก้ไขปัญหาที่อธิบายไว้ในบทความนี้เท่านั้น นำวิธีนี้ไปใช้กับระบบที่ประสบกับปัญหาที่เฉพาะเจาะจงเท่านั้น โปรแกรมแก้ไขด่วนนี้อาจได้รับการทดสอบเพิ่มเติม ดังนั้น ถ้าคุณจะไม่รุนแรงได้รับผลกระทบจากปัญหานี้ เราขอแนะนำให้ คุณรอถัดไป Visual Studio 2008 service pack ที่ประกอบด้วยโปรแกรมแก้ไขด่วนนี้

เมื่อต้องการแก้ไขปัญหานี้ทันที ติดต่อฝ่ายบริการสนับสนุนลูกค้าของ Microsoft เพื่อขอรับโปรแกรมแก้ไขด่วน สำหรับรายการทั้งหมดของหมายเลขโทรศัพท์บริการการสนับสนุนลูกค้าของ Microsoft และข้อมูลเกี่ยวกับค่าใช้จ่ายในการสนับสนุน โปรดเยี่ยมชมเว็บไซต์ต่อไปนี้ของ Microsoft:หมายเหตุ ในกรณีพิเศษ ค่าบริการที่เรียกเก็บตามปกติเมื่อโทรติดต่อฝ่ายสนับสนุนอาจจะยกเลิกได้หาก Microsoft Support Professional ตัดสินว่าโปรแกรมปรับปรุงที่เฉพาะเจาะจงจะแก้ไขปัญหาของคุณได้ ค่าใช้จ่ายในการสนับสนุนตามปกติจะใช้กับคำถามและปัญหาในการสนับสนุนเพิ่มเติมซึ่งไม่สอดคล้องตามเกณฑ์สำหรับโปรแกรมปรับปรุงเฉพาะที่เกี่ยวข้อง

ข้อกำหนดเบื้องต้น

คุณต้องมี Visual Studio 2008 Service Pack 1 ติดตั้งอยู่เพื่อใช้โปรแกรมแก้ไขด่วนนี้

ข้อกำหนดการรีสตาร์ท

คุณไม่ต้องรีสตาร์ทคอมพิวเตอร์หลังจากใช้โปรแกรมแก้ไขด่วนนี้

ข้อมูลการแทนที่โปรแกรมแก้ไขด่วน

โปรแกรมแก้ไขด่วนนี้ไม่ได้แทนโปรแกรมแก้ไขด่วนอื่น ๆ

ข้อมูลแฟ้ม

รุ่นสากลของ hotfix นี้มีแอตทริบิวต์ของแฟ้ม (หรือแอตทริบิวต์ของแฟ้มที่ใหม่กว่า) ซึ่งแสดงอยู่ในตารางต่อไปนี้ วันที่และเวลาสำหรับแฟ้มเหล่านี้จะแสดงรายการไว้ในรูปแบบเวลามาตรฐานสากล (UTC) เมื่อคุณดูข้อมูลแฟ้ม ระบบจะแปลงข้อมูลนี้เป็นเวลาท้องถิ่น เมื่อต้องการค้นหาความแตกต่างระหว่างเวลา UTC กับเวลาท้องถิ่น ใช้แท็บ โซนเวลา ในรายการ วันที่และเวลา ในแผงควบคุม
ชื่อแฟ้มรุ่นของแฟ้มขนาดของแฟ้มวันที่เวลาแพลตฟอร์ม
C2.dll15.0.30729 40562,361,65603-มีนาคม-200910:46x86
Cl.exe15.0.30729.4056126, 77603-มีนาคม-200910:46x86
Clui.dll15.0.30729.405619 2,32803-มีนาคม-200910:46x86
Clui.dll15.0.30729.405620 9,73603-มีนาคม-200910:46x86
Clui.dll15.0.30729.405627 7,30403-มีนาคม-200910:46x86
Clui.dll15.0.30729.405627 9,88003-มีนาคม-200910:46x86
Clui.dll15.0.30729.405639 1,49603-มีนาคม-200910:46x86
Clui.dll15.0.30729.405639 2,00803-มีนาคม-200910:46x86
Clui.dll15.0.30729.405645 7,54403-มีนาคม-200910:46x86
Clui.dll15.0.30729.405646 4,20003-มีนาคม-200910:46x86
Clui.dll15.0.30729.405646 7,27203-มีนาคม-200910:46x86
Clui.dll15.0.30729.405647 2,39203-มีนาคม-200910: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แก้ไข: ข้อยกเว้นแบบ floating-point เกิดขึ้นเมื่อแอพลิเคชันประกอบด้วยตัวแปร floating-point เตรียม และคอมไพล์ ด้วยการ /fp: คาดว่าตัวเลือกใน Visual Studio 2008

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับศัพท์เฉพาะในการปรับปรุงซอฟต์แวร์ ให้คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
824684คำอธิบายของคำศัพท์มาตรฐานที่ใช้เพื่ออธิบายปรับปรุงซอฟต์แวร์ของ Microsoft