FIX: يتم إنشاء رمز الجهاز غير صحيحة لبيان "تبديل" في Visual c + + 2010 x 64 برنامج التحويل البرمجي

هام: تمت ترجمة هذا المقال باستخدام برنامج ترجمة آلية لشركة مايكروسوفت بدلاً من الاستعانة بمترجم بشري. تقدم شركة مايكروسوفت كلاً من المقالات المترجمة بواسطة المترجمين البشر والمقالات المترجمة آليًا وبالتالي ستتمكن من الوصول إلى كل المقالات الموجودة في قاعدة المعرفة الخاصة بنا وباللغة الخاصة بك. بالرغم من ذلك، فإن المقالة المترجمة آليًا لا تكون دقيقة دائمًا وقد تحتوي على أخطاء إملائية أو لغوية أو نحوية، مثل تلك الأخطاء الصادرة عن متحدث أجنبي عندما يتحدث بلغتك. لا تتحمل شركة مايكروسوفت مسئولية عدم الدقة أو الأخطاء أو الضرر الناتج عن أية أخطاء في ترجمة المحتوى أو استخدامه من قبل عملائنا. تعمل شركة مايكروسوفت باستمرار على ترقية برنامج الترجمة الآلية

اضغط هنا لرابط المقالة باللغة الانجليزية2802711
الأعراض
نفترض أن التحويل البرمجي C أو c + + ملف التعليمات برمجية مصدر إلى ملف ثنائي المستندة إلى x64 باستخدام برنامج التحويل البرمجي Visual C/c + + (Cl.exe) في Microsoft Visual Studio 2010. ملف التعليمات البرمجية المصدر يحتوي على دالة يستخدم عبارة التبديل . في هذه الحالة، قد يتم إنشاء رمز الجهاز غير صحيحة لبيان التبديل إذا كانت الشروط التالية صحيحاً:
  • يتم تمكين الخيار برنامج التحويل البرمجي /Ob1 (Only_inline).
  • يتم تمكين /O1 (تصغير حجم) أو /O2 (تكبير سرعة)، /Ox (أمثلية الكامل)، أو خيار برنامج التحويل البرمجي أمثلية /Og (أمثلية العمومية).
  • يتم تعطيل الخيار برنامج التحويل البرمجي /GL (أسرة البرنامج الأمثل).
الحل

معلومات الإصلاح العاجل

الآن يتوفر إصلاح عاجل معتمد من Microsoft. ومع ذلك، فإنه المقصود لتصحيح المشكلة الموضحة في هذه المقالة فقط. تطبيقها فقط على الأنظمة التي تواجه هذه المشكلة بالتحديد.

لحل هذه المشكلة، اتصل بخدمات دعم العملاء في Microsoft للحصول على الإصلاح العاجل. للحصول على قائمة كاملة من أرقام الهواتف خدمات دعم العملاء في Microsoft وعلى معلومات حول تكاليف الدعم، قم بزيارة موقع Microsoft التالي على ويب:ملاحظة وفي الحالات الخاصة، قد يتم إلغاء المصروفات التي تحتسب عادة على مكالمات الدعم إذا قرر أخصائي الدعم لدى Microsoft أن عملية تحديث محددة سيتم حل المشكلة الخاصة بك. سيتم تطبيق تكاليف الدعم المعتادة على أسئلة الدعم الإضافية والمشكلات التي لا يعمل على حلها هذا التحديث في السؤال.

المتطلبات الأساسية

لتطبيق هذا الإصلاح العاجل، يجب أن يكون لديك Visual Studio 2010 الخدمة service Pack 1 (SP1) مثبتة.

قم بإعادة تشغيل متطلبات

ليس لديك إلى إعادة تشغيل جهاز الكمبيوتر بعد تطبيق هذا الإصلاح العاجل إذا لم تستخدم الملفات المتأثرة. نوصي بأن تقوم بإغلاق Visual Studio 2010-المتعلقة مكونات قبل تطبيق هذا الإصلاح العاجل.

معلومات الملف

لديه الإصدار العمومي من هذا الإصلاح العاجل سمات الملف (أو سمات الملف الأحدث) المسرودة في الجدول التالي. يتم سرد التواريخ والأوقات الخاصة بهذه الملفات في "حسب التوقيت العالمي" (UTC). عندما تقوم بعرض معلومات الملف، يتم تحويلها إلى التوقيت المحلي. لمعرفة الفرق بين التوقيت العالمي UTC والتوقيت المحلي، استخدم المنطقة الزمنية علامة التبويب في التاريخ والوقت العنصر في "لوحة التحكم".
اسم الملفإصدار الملفحجم الملفتاريخالوقتمنصةمسار
C2.dll16.0.40219.4442,606,71211 مارس 201319:24x 86مايكروسوفت البصرية ستوديو 10.0\VC\bin
C2.dll16.0.40219.4442,493,56012 مارس 201316:48x 86مايكروسوفت البصرية ستوديو 10.0\VC\bin\x86_amd64
C2.dll16.0.40219.4442,593,92812 مارس 201316:48x 86مايكروسوفت البصرية ستوديو 10.0\VC\bin\x86_ia64
C2.dll16.0.40219.4442,960,50412 مارس 201316:48x 64مايكروسوفت البصرية ستوديو 10.0\VC\bin\amd64

معلومات أخرى
لإعادة إنشاء هذه المشكلة, قم بإنشاء ملف مصدر C أو c + + الذي يحتوي على التعليمات البرمجية التالية:
#include <stdio.h>int test(int bps, int sflags){    if (sflags & (1 << bps))    {        switch (bps)        {        case 1:  return 1;        case 2:  return 3;        default: return 0;        }    }    else    {        switch (bps)        {        case 1:  return 2;        default: return 0;        }    }} void main(){    int res = test(1, -1);    printf("%d\n", res);}


ثم، قم بفتح موجه الأوامر Visual Studio x 64 عبر أدوات أو موجه الأوامر Visual Studio x 64 Win64 في Visual Studio 2010، وترجمة الملف المصدر باستخدام الأمر التالي:
cl/Ob1/O2 'مسار الملف المصدر'

والنتيجة المتوقعة 1. ومع ذلك، النتيجة الفعلية 0.
تصريح
تم تأكيد Microsoft أن هذه هي مشكلة في منتجات Microsoft المسردة في قسم "تنطبق على".
مراجع
لمزيد من المعلومات حول خيار برنامج التحويل البرمجي /Ob ، انتقل إلى موقع ويب MSDN التالي: لمزيد من المعلومات حول خيار برنامج التحويل البرمجي /GL ، انتقل إلى موقع ويب MSDN التالي: لمزيد من المعلومات حول خيارات التحسين /O ، انتقل إلى موقع ويب MSDN التالي:

تحذير: تمت ترجمة هذه المقالة تلقائيًا

خصائص

رقم الموضوع: 2802711 - آخر مراجعة: 03/29/2013 08:47:00 - المراجعة: 3.0

Microsoft Visual Studio 2010 Service Pack 1, Microsoft Visual Studio 2010 Ultimate, Microsoft Visual Studio 2010 Professional, Microsoft Visual Studio 2010 Premium with MSDN

  • kbqfe kbHotfixServer kbfix kbsurveynew kbexpertiseadvanced kbmt KB2802711 KbMtar
تعليقات