Handling exception from unmanaged dll in C# -


मेरे पास सी #

  सार्वजनिक स्थिर स्ट्रिंग GetNominativeDeclension (string surnameNamePatronimic) में लिखित निम्नलिखित फ़ंक्शन है {यदि (surnameNamePatronimic == नल) नया तर्क फेंकना NullException ("surnameNamePatronimic");  
  IntPtr [] ptrs = null; {Ptrs = StringsToIntPtrArray (surnameNamePatronimic) का प्रयास करें; Int परिणामएल = = MaxResultBufSize; Int err = decGetNominativePadeg (ptrs [0], ptrs [1], रिफ़ परिणाम लैन); ThrowException (गलती); वापसी IntPtrToString (ptrs, परिणामलेन); } पकड़ {वापसी surnameNamePatronimic; } अंत में {फ्री आईएनटीटीपीटी (पीटीआर); }  

}

समारोह decGetNominativePadeg अप्रबंधित DLL

  [DllImport ("Padeg.dll", EntryPoint में है) = "GetNominativePadeg")] निजी स्थिर extern Int32 decGetNominativePadeg (IntPtr surnameNamePatronimic, IntPtr परिणाम, रेफरी Int32 परिणाम लंबाई);   

और एक अपवाद डालता है: संरक्षित स्मृति को पढ़ने या लिखने का प्रयास किया गया। यह अक्सर एक संकेत होता है कि अन्य स्मृति भ्रष्ट है
सी # कोड में पकड़ यह वास्तव में पकड़ नहीं करता है क्यूं कर? इस अपवाद को कैसे संभालना है?
आपकी मदद के लिए धन्यवाद!

"CLR अब बचा नहीं देता

बस कॉन्फिग फाइल में इसे जोड़ें:


Comments