यह एक समस्या है जिसका उपयोग मैं .NET 2.0 में सीरियल पोर्ट क्लास के साथ हर समय होता था। यह सुझाव दिया गया था कि .NET 4 में अपग्रेड करने से समस्या ठीक हो जाएगी ... और यह लगभग सभी मामलों में हुई थी।विंडोज 7 पर .NET 4 सीरियल पोर्ट ऑब्जेक्ट डिस्प्ले अपवाद केवल
यदि मैं यूएसबी-टू-सीरियल एडाप्टर के साथ संवाद करने के लिए .NET में निर्मित सीरियल पोर्ट क्लास का उपयोग कर रहा हूं, और पोर्ट खोलने के दौरान एडाप्टर अप्रत्याशित रूप से अनप्लग किया गया है, तो अवसर पर मुझे एक अनचाहे अपवाद मिलता है:
Application: test.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.ObjectDisposedException
Stack:
at System.Runtime.InteropServices.SafeHandle.DangerousAddRef(Boolean ByRef)
at System.StubHelpers.StubHelpers.SafeHandleAddRef(System.Runtime.InteropServices.SafeHandle, Boolean ByRef)
at Microsoft.Win32.UnsafeNativeMethods.GetOverlappedResult(Microsoft.Win32.SafeHandles.SafeFileHandle, System.Threading.NativeOverlapped*, Int32 ByRef, Boolean)
at System.IO.Ports.SerialStream+EventLoopRunner.WaitForCommEvent()
at System.Threading.ThreadHelper.ThreadStart_Context(System.Object)
at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
at System.Threading.ThreadHelper.ThreadStart()
फिर से, अधिकांश समय यह ठीक काम करता है। वास्तव में, मैं अपने कंप्यूटर पर भी समस्या का पुनरुत्पादन नहीं कर सकता। यह मेरे एक दोस्त के साथ होता है। क्या इस त्रुटि को फँसाने के लिए कोई रास्ता है?
संपादित करें: मैं स्वयं व्यवहार को पुन: उत्पन्न करने में सक्षम था। मैं अब प्रयोग कर रहा हूं, लेकिन अभी भी इस त्रुटि को एनईटी 4.0 में क्या कारण बनता है।
संपादित करें 2: यह को केवल विंडोज 7 अनप्लग पर हो और XP पर यूएसबी करने वाली सीरियल एडाप्टर प्लग इन खूबसूरती से काम करता है लगता है।
अजीब, मैं इसे काम करने के लिए कभी नहीं मिला। मैंने लंबे समय से माइक्रोसॉफ्ट के अंतर्निहित सीरियल क्लास को छोड़ दिया है, और तीसरे पक्ष के साथ चला गया है। – Brad
पर्याप्त मेला, मुझे नहीं लगता कि कोई भी कोशिश करेगा और बहस करेगा कि यह एक बुरा विकल्प है :) –