2009-06-10 13 views
9

मेरी कंपनी के लिए, मैंने एक एएसपी.नेट वेब सेवा बनाई है जो क्रेडिट कार्ड लेनदेन को अधिकृत करने के लिए तृतीय पक्ष भुगतान प्रकोपिंग इंजन का उपयोग करता है।HRESULT: 0x80010105 (RPC_E_SERVERFAULT) प्रश्न

वेब सेवा एक अलग अनुप्रयोग सर्वर पर होस्ट की जाती है और एक ActiveX ऑब्जेक्ट (.ocx एक्सटेंशन) के माध्यम से भुगतान प्रसंस्करण सर्वर से जुड़ती है। हाल ही में, जब मैं "IsAvaiable" चेक का उपयोग कर एप्लिकेशन से कनेक्शन स्थापित करने का प्रयास करता हूं तो यह एक HRESULT: 0x80010105 (RPC_E_SERVERFAULT) अपवाद उत्पन्न कर रहा है।

क्या कोई इस मुद्दे पर शोध करने के लिए शुरू करने के लिए एक अच्छी जगह की सिफारिश करता है?

(मैं वाला विक्रेता विकल्प होगा से संपर्क पता है, लेकिन मैं "एक पंक्ति में बतख" मेरे करना चाहते हैं इससे पहले कि हम तकनीकी समर्थन से संपर्क)

उत्तर

2

मैं एक ही त्रुटि (RPC_E_SERVERFAULT) मिला है ActiveX का उपयोग कर वेब सेवाओं में वस्तुओं। जब भी ActiveX ऑब्जेक्ट क्रैश हो जाता है, आईआईएस इस त्रुटि को फेंक देगा, जो ऑब्जेक्ट क्रैश होने के कारण को मुखौटा करेगा (हमारे लिए यह आमतौर पर एक अवैध फ़ाइल लोड करते समय क्रैश हो रहा था जिसे इसे संसाधित करने और मूल्यों को वापस करने के लिए आवश्यक था)।

क्या आपने सिस्टम लॉग इत्यादि की जांच की है यह देखने के लिए कि क्या आपके ActiveX नियंत्रण ने वास्तविक त्रुटि को कहीं भी लॉग किया है?

यदि आप कुछ भी स्पष्ट नहीं देख पा रहे हैं तो मैं वास्तविक तकनीकी त्रुटि का निदान करने का सबसे अच्छा तरीका जानने के लिए अपने तकनीकी समर्थन से संपर्क करने की सलाह दूंगा और यदि यह कहीं भी इसकी त्रुटियों को लॉग कर रहा है।

+1

मैंने वेब सेवा सर्वर के इवेंट लॉग की जांच की और RPC_E_SERVERFAULT त्रुटि से संबंधित कोई भी त्रुटि नहीं देखी। मेरे पास एप्लिकेशन सर्वर तक पहुंच नहीं है, शायद मुझे वहां कुछ मिल सकता है। –

0

आप adplus को सक्षम कर सकते हैं ताकि प्रत्येक बार अपवाद प्राप्त होने पर मेमोरी डंप हो सके। इसका उपयोग इस मुद्दे को डीबग करने में मदद के लिए किया जा सकता है।

+0

मेमोरी डंप कहां से आएगा: आईआईएस या ActiveX ऑब्जेक्ट? –

+0

मेमोरी डंप एप्लिकेशन से आते हैं, व्यक्तिगत मॉड्यूल से नहीं, इसलिए आईआईएस –

+0

यह वास्तव में अपवाद होने पर डीएमपी फ़ाइल का उत्पादन नहीं करता है। क्या कोई अन्य प्रकार का फ़ाइल एक्सटेंशन है जिसे मुझे देखना चाहिए जिसे मेमोरी डंप माना जाएगा। –

2

माइकल, आपकी तीसरी पार्टी एक्टिवैक्स नियंत्रण शायद स्मृति को सही तरीके से प्रबंधित नहीं कर रहा है। मेरा अनुमान है कि यह स्मृति के एक हिस्से को ओवरराइट कर रहा है जब यह नहीं होना चाहिए। यह देखने के लिए कि क्या उनके पास कोई फिक्स है या नहीं, अपने तीसरे पक्ष प्रदाता से जांचें।

1

मुझे पता है कि यह स्टैक ओवरफ़्लो है और यहां एक प्रोग्रामिंग उत्तर होना चाहिए, लेकिन आप असफल मशीन में कोई अपडेट या सॉफ़्टवेयर परिवर्तन नहीं करते हैं। यदि कोई सॉफ़्टवेयर परिवर्तन नहीं होता है तो यह संभवतः एक हार्डवेयर समस्या है। रैम विफलता, सीपीयू विफल, हार्डवेयर विफल रहता है। यदि आप सिस्टम को ऑफ़लाइन ले सकते हैं और हार्डवेयर का परीक्षण कर सकते हैं तो आपको शायद पता चलेगा कि डिस्क या मेमोरी मॉड्यूल विफल हो रहा है (एनआईसी शायद भी)। यह संभवतः विक्रेता द्वारा किया जाने वाला पहला कदम होगा लेकिन यदि आप इसे स्वयं करते हैं तो आप इसे अपने नियमों पर कर सकते हैं और अपने समय के कुछ घंटों के लिए सेवा शुल्क सुरक्षित कर सकते हैं।

+0

यह बकवास है – Elmue

+0

@Elmue जोड़ने के लिए कुछ रचनात्मक है? हार्डवेयर को सत्यापित करना अक्सर एक अच्छा कदम होता है और मैंने खराब रैम को क्रिप्टोग्राफिक हस्ताक्षर सत्यापन समस्याओं सहित विभिन्न त्रुटियों का कारण देखा है। यदि क्रिप्टो विफल हो रहा है तो आरपीसी इसके कारण असफल हो सकता है।इस सवाल पर एक विक्रेता से संपर्क करते समय सलाह के बारे में भी पूछा गया, नियमित हार्डवेयर को कई आलसी तकनीकें मिलेंगी, फोन फोन एजेंट कॉल को डंप करने के लिए उपयोग करते हैं। – Sqeaky

+1

मैंने कई RPC_E_SERVERFAULT त्रुटियां देखी हैं। कभी हार्डवेयर कारण नहीं था। इन त्रुटियों का अर्थ यह है कि एक COM सर्वर क्रैश हो गया है। कारण ज्यादातर प्रोग्रामिंग त्रुटियों जैसे बफर ओवरफ्लो या नल पॉइंटर्स या खराब त्रुटि हैंडिंग पढ़ रहे हैं। यदि आपको रैम के साथ समस्याएं होंगी तो आपको ब्लूसेक्रेंस तक भी विभिन्न अनुप्रयोगों में क्रैश दिखाई देगा (केवल एक सर्वर में नहीं)। यह असंभव है कि एक हैडवेयर समस्या केवल एक आवेदन में दुर्घटनाओं का कारण बनती है। – Elmue

0

इसका भी अर्थ हो सकता है कि COM ऑब्जेक्ट क्रैश हो गया। एक्सेल में मैक्रो के साथ ऐसा होता था जो Excel को क्रैश करता था। COM ऑब्जेक्ट (मेरे मामले में, एक एक्सेल एडिन) द्वारा प्रतिनिधित्व किए गए एप्लिकेशन को पुन: चालू करने का प्रयास करें और देखें कि यह क्रैश या कुछ त्रुटि उत्पन्न करता है या नहीं।

संबंधित मुद्दे