أنت غير متصل حاليًا، وفي انتظار الإنترنت الخاص بك ليقوم بإعادة الاتصال

FIX: حدوث تسرب للذاكرة في أحد تطبيقات WPF عند كائن فرشاة المشار إليها بواسطة استخدام ديناميكريسورسي

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

اضغط هنا لرابط المقالة باللغة الانجليزية2651992
الأعراض
النظر في السيناريو التالي:
  • يمكنك إنشاء تطبيق Microsoft Windows عرض مؤسسة (WPF) الذي يستهدف Microsoft.NET Framework 3.0 أو Microsoft.NET Framework 3.5.
  • ويعرف التطبيق كائن فرشاة وكائن لون في ملف XAML للتطبيق.
    • يستخدم الكائن فرشاة ديناميكريسورسي إلى مرجع كائن اللون. على سبيل المثال،
      <Application.Resources><Color x:Key="color1">#ff4050ff</Color><SolidColorBrush x:Key="brush1" Color="{DynamicResource color1}"/></Application.Resources>
    • كائن فرشاة تتم الإشارة إليه ديناميكريسورسي في إطار WPF أو عنصر تحكم مستخدم أو كائن آخر. على سبيل المثال،
      <Window x:Class="WpfApplication6.Window1"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"Title="Window1" Height="300" Width="300" Background="{DynamicResource brush1}"></Window>
  • يمكنك فتح أو إغلاق المثيلات من الإطار أو عنصر تحكم المستخدم.

في هذا السيناريو، هي حالات تضرب بجذورها في الكومة (GC) جمع القمامة ولم يفرج عنه. مع مرور الوقت، حدوث تسرب لذاكرة كما يتم إنشاء مثيلات المزيد والمزيد من الإطار أو عنصر تحكم المستخدم. في نهاية المطاف، تتلقى System.OutOfMemoryException الاستثناء.

ملاحظة لا تحدث هذه المشكلة عندما يستهدف التطبيق Microsoft.صافي الإطار 4.

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

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

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

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

الشروط الأساسية

لتطبيق هذا الإصلاح العاجل، يجب أن يكون لديك Microsoft.صافي الإطار 3.5.1 مثبت على جهاز كمبيوتر يعمل بأحد أنظمة التشغيل التالية:
  • ويندوز 7 الخدمة service Pack 1 (SP1)
  • Windows Server 2008 R2 الخدمة service Pack 1 (SP1)


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

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

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

وقد الإصدار العمومي من هذا الإصلاح الجديد سمات الملف (أو سمات الملف الأحدث) المسرودة في الجدول التالي. التواريخ والأوقات لهذه الملفات يتم سرد في "التوقيت العالمي" (UTC). عندما تقوم بعرض معلومات الملف، يتم تحويلها إلى التوقيت المحلي. للبحث الفرق بين UTC والوقت المحلي استخدم المنطقة الزمنية علامة التبويب في التاريخ والوقت العنصر في "لوحة التحكم".

وأو كافة المعتمدة المستندة إلى x86 الإصدارات x من Windows 7
اسم الملفإصدار الملفحجم الملفالتاريخالوقتمنهاج
Presentationframework.dll3.0.6920.57385,283,84016 ديسمبر 201101:49x 86
Windowsbase.dll3.0.6920.57381,253,37616 ديسمبر 201101:49x 86
Presentationcore.dll3.0.6920.57384,218,88016 ديسمبر 201101:49x 86
Presentationframework.dll3.0.6920.57385,283,84016 ديسمبر 201101:49x 86
Presentationhostdll.dll3.0.6920.5738131,36016 ديسمبر 201101:49x 86
Presentationhost.exe4.0.40305.0296,22416 ديسمبر 201101:49x 86
Presentationhostproxy.dll4.0.31106.0100,13616 ديسمبر 201101:49x 86
Windowsbase.dll3.0.6920.57381,253,37616 ديسمبر 201101:49x 86

وأو كافة المعتمدة x الإصدارات المستندة إلى 64 من Windows 7 ومن Windows Server 2008 ص2
اسم الملفإصدار الملفحجم الملفالتاريخالوقتمنهاج
Presentationcore.dll3.0.6920.57383,998,72016 ديسمبر 201101:42x 64
Presentationframework.dll3.0.6920.57384,640,76816 ديسمبر 201101:42x 86
Presentationhostdll.dll3.0.6920.5738172,32016 ديسمبر 201101:42x 64
Presentationhost.exe4.0.31106.0321,31216 ديسمبر 201101:42x 64
Presentationhostproxy.dll4.0.31106.0110,88816 ديسمبر 201101:42x 64
Windowsbase.dll3.0.6920.57381,114,11216 ديسمبر 201101:42x 86
Presentationframework.dll3.0.6920.57385,283,84016 ديسمبر 201101:49x 86
Windowsbase.dll3.0.6920.57381,253,37616 ديسمبر 201101:49x 86
Presentationcore.dll3.0.6920.57384,218,88016 ديسمبر 201101:49x 86
Presentationframework.dll3.0.6920.57385,283,84016 ديسمبر 201101:49x 86
Presentationhostdll.dll3.0.6920.5738131,36016 ديسمبر 201101:49x 86
Presentationhost.exe4.0.40305.0296,22416 ديسمبر 201101:49x 86
Presentationhostproxy.dll4.0.31106.0100,13616 ديسمبر 201101:49x 86
Windowsbase.dll3.0.6920.57381,253,37616 ديسمبر 201101:49x 86



الحل البديل
للعمل حول هذه المشكلة، استخدم أحد الأساليب التالية:
  • استخدامستاتيكريسورسي إلى مرجع كائن اللون في كائن فرشاة. على سبيل المثال، تغيير الجزء الأول من التعليمات البرمجية في ملف XAML التي يتم المذكورة في قسم "الأعراض" إلى ما يلي:
    <Color x:Key="color1">#ff4050ff</Color> <SolidColorBrush x:Key="brush1" Color="{StaticResource color1}"></SolidColorBrush>
  • تعيينس: المشتركة الخيار إلى إذا كاذبة ديناميكريسورسي يتم استخدام. على سبيل المثال، تغيير الجزء الأول من التعليمات البرمجية في ملف XAML التي يتم المذكورة في قسم "الأعراض" إلى ما يلي:
    <Application.Resources>        <Color x:Key="color1">#ff4050ff</Color>        <SolidColorBrush x:Key="brush1" x:Shared="False" Color="{DynamicResource color1}" />    </Application.Resources>



مراجع
للحصول على مزيد من المعلومات حول ديناميكريسورسي ملحق التوصيف، قم بزيارة موقع msdn على ويب التالي:
للحصول على مزيد من المعلومات حول الفرش WPF، قم بزيارة موقع msdn على ويب التالي:
تصريح
تم تأكيد Microsoft أن هذا هو وجود مشكلة في منتجات Microsoft المسردة في قسم "تنطبق على".

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

خصائص

رقم الموضوع: 2651992 - آخر مراجعة: 01/10/2012 01:45:00 - المراجعة: 1.0

Microsoft .NET Framework 3.0, Microsoft .NET Framework 3.0 Service Pack 1, Microsoft .NET Framework 3.0 Service Pack 2, Microsoft .NET Framework 3.5, Microsoft .NET Framework 3.5 Service Pack 1

  • kbqfe kbhotfixserver kbfix kbexpertiseadvanced kbsurveynew kbmt KB2651992 KbMtar
تعليقات
/html>>/html>t/JavaScript" async=""> var varAutoFirePV = 1; var varClickTracking = 1; var varCustomerTracking = 1; var Route = "76500"; var Ctrl = ""; document.write(" e(language);" class="ng-binding" id="language-es-es">España - Español
Paraguay - Español
Venezuela - Español
mp;t=">if?DI=4050&did=1&t=">r varClickTracking = 1; var varCustomerTracking = 1; var Route = "76500"; var Ctrl = ""; document.write(" mp;t=">