2012-08-09 9 views
8

में अनचाहे अपवाद मुझे मेरे मेट्रो ऐप को डीबग करने/चलाने के दौरान कुछ अजीब व्यवहार मिला है। ड्रैग'ड्रॉप के दौरान स्क्रीन रीफ्रेश हो जाएगी। ड्रैगड्रॉप प्रगति पर है, जबकि मैंने बाध्य गुणों को ताज़ा करने से रोकने के लिए कुछ कार्यक्षमता जोड़ दी होगी।Win8 - Windows.UI.Xaml.dll

लेकिन कभी कभी ऐप्लिकेशन क्रैश, लेकिन कुछ अपवाद जो मैं डीबग कर सकते हैं फेंकने की जगह में, सभी मुझे मिल गया एक खिड़की एक बाहरी जस्ट-इन-टाइम-डिबगर

एक बिना क्रिया Win32 अपवाद को खोलने के लिए कह रही है है SOME_APP.exe [7785] में हुआ।

(बाहरी डिबगर में अधिक जानकारी नहीं लाती)

और उत्पादन का कहना है:

क्रिया के अपवाद 0x05017145 SOME_APP.exe में (Windows.UI.Xaml.dll) पर: 0xc0000005 : 0x00000088 स्थान उल्लंघन उल्लंघन का उपयोग करें।

मैं एक x64 डिवाइस पर काम कर रहा हूं। क्या किसी ने कभी ऐसी समस्या के बारे में सुना है?

+0

यह आपको एक बिल्कुल अच्छा अपवाद देता है - प्रवेश उल्लंघन। आप स्मृति को एक्सेस या संशोधित करने का प्रयास कर रहे हैं जो आपकी नहीं है। – steveg89

+0

हाँ, ऐसा लगता है, लेकिन मैं कोड द्वारा संबोधित कोई स्मृति नहीं करता हूं। Win8, xaml.dll और/या 32 बिट सिस्टम बनाम 64 बिट के साथ कुछ समस्याएं हो सकती हैं? – salcosand

+0

मैं निश्चित रूप से नहीं कह सकता लेकिन मेरा पहला परीक्षण आपके कोड पर टिप्पणी करना होगा जो ताज़ा करने को अक्षम करता है और देखता है कि त्रुटि बनी रहती है या नहीं। आप इसे बिना जानते हुए, वहां कहीं भी स्मृति को दूषित कर सकते हैं जो इस त्रुटि का कारण बन सकता है। यद्यपि यह सभी काल्पनिक है। अगर उस कोड को हटाए गए त्रुटि के साथ त्रुटि नहीं होती है, तो आप पोस्ट करना चाहते हैं कि आप वहां क्या कर रहे हैं ताकि हम त्रुटियों की तलाश कर सकें। – steveg89

उत्तर

11

यदि आप नेविगेशन पैरामीटर के माध्यम से INOTifyPropertyChanged, विरासत BindableBase या DependencyObject इत्यादि लागू वस्तुओं को पारित कर रहे हैं; और फिर नेविगेटेड पेज में बाध्य करें (या नेविगेटिंग पेज में उन्हें बाध्य करें) आपको सबसे अधिक संभावना यह त्रुटि मिल जाएगी। नेविगेट करते समय नेविगेशन पैरामीटर के माध्यम से आदिम प्रकार को छोड़कर किसी ऑब्जेक्ट को पास न करें।

आपको यह अपवाद मिल रहा है क्योंकि गैर-मौजूद संदर्भित विधियां। उदाहरण के लिए।

  1. आपके पास एक ऑब्जेक्ट नामक ऑब्जेक्ट है जो बाइंडबलबेस को विरासत में मिला है।
  2. आपने इसे होम.एक्सएमएल से बांध दिया।
  3. होम.एक्सएमएल की बाध्यकारी तंत्र ने श्रेणियों की संपत्ति की संपत्ति की सदस्यता की सदस्यता ली।
  4. आपने नेविगेशन पैरामीटर के रूप में Article.xaml पास ऑब्जेक्ट ऑब्जेक्ट को नेविगेट किया।
  5. आपने श्रेणियों को Article.xaml पर बाध्य किया।
  6. जब कोई वस्तु ऑब्जेक्ट में बदलती है; वह संपत्ति संपत्तिChanged घटना आग लग जाएगी।
  7. उस घटना के दो ग्राहक हैं। Home.xaml और Article.xaml, लेकिन Home.xaml अब मौजूद नहीं है क्योंकि आप इससे दूर नेविगेट किए गए हैं। लेकिन आपके प्रतिनिधि के पास इसका पता है; इसलिए यह निष्पादित करने की कोशिश करता है; और प्रवेश उल्लंघन त्रुटि के साथ विफल।
संबंधित मुद्दे