2012-07-07 8 views
5

मैं दृश्य स्टूडियो 2010 मैं निम्नलिखित चरणों का प्रदर्शन किया है में एक dll बनाया है:क्लासिक एएसपी और COM DLL सर्वर 2008 R2 में काम नहीं करता (माइक्रोसॉफ्ट VBScript रनटाइम त्रुटि ActiveX घटक वस्तु नहीं बना सकते '800a01ad')

  1. को देखते हुए निर्माण इसे करने के लिए एक कुंजी युग्म (SNK फाइल) जोड़ कर एक मजबूत नाम

  2. प्रत्येक वर्ग के एक व्यक्ति ProgID और GUID

  3. को देखते हुए यह एक 64 बिट DLL मुझे लगता है कि यह सुनिश्चित किया है RegWsm.exe का उपयोग 'FrameWork64/v4xxxx 'फ़ोल्डर। मैं Regasm.exe/codebase इस्तेमाल किया ECE2.dll

  4. मैं

इन चरणों के सभी सफल रहे हैं DLL

पर दौड़ा 'GACUtil मैं'। मैं जिस डीएलएल और एएसपी पेज का उपयोग कर रहा हूं वह इंटेटपब/wwwroot में संग्रहीत है।

अब, डीएलएल मेरे लैपटॉप और घरेलू कंप्यूटर (दोनों विंडोज 7 अल्टीमेट) पर ठीक काम करता है। अब मैं विंडोज सर्वर 2008 आर 2 पर काम करने की कोशिश कर रहा हूं। यह वह जगह है जहां मुझे समस्या है।

मैं ऊपर जैसा ही कदम पूरा करता हूं, जिनमें से सभी सफल होते हैं। लेकिन जब मैं एएसपी पेज चलाने के लिए, मैं जो सुझाव है कि यह पंजीकृत नहीं है एक त्रुटि संदेश हो रही है, भले ही यह है:

माइक्रोसॉफ्ट VBScript रनटाइम त्रुटि '800a01ad' ActiveX घटक वस्तु नहीं बना सकते : 'ECE2.CSV_DataSet'

मैंने सोचा कि यह आईआईएस में एक सेटिंग हो सकती है जिसे बदलने की जरूरत है। ध्यान दें कि क्लासिक एएसपी पृष्ठों को अनुमति देने के लिए यह सर्वर पहले ही कॉन्फ़िगर किया गया है, इसलिए मुझे पता है कि यह ऐसा नहीं है। क्या कोई मुझे कोई संकेत दे सकता है कि सर्वर में बदलने के लिए मुझे कोई विशेष सेटिंग है या नहीं, या क्या अतिरिक्त सुरक्षा हुप्स हैं जो मुझे सर्वर 2008 पर काम करने के लिए कूदना है, जिस पर मुझे करने की आवश्यकता नहीं है विंडोज 7 अल्टीमेट?

+1

वेबसाइट के तहत एक एप्लिकेशन निर्देशिका बनाएं, इसमें एएसपी डालें, सुनिश्चित करें कि एप्लिकेशन निर्देशिका व्यवस्थापक के रूप में चल रही है (सामान्य आईआईएस उपयोगकर्ता नहीं), क्या इससे मदद मिलती है? - यह एक सुरक्षा समस्या हो सकती है – Paul

उत्तर

7

यह एएसपी एप्लिकेशन चलाने वाले एप्लिकेशन पूल की उन्नत सेटिंग्स की जांच करें। क्या इसमें "32-बिट एप्लिकेशन सक्षम करें" सत्य पर सेट है। यदि ऐसा है तो आपकी समस्या यह है कि आप 32 बिट पूल के तहत 64 बिट डीएलएल को चालू नहीं कर सकते हैं।

क्या कोई कारण है कि आप इसे "किसी भी CPU" के बजाय "64 बिट डीएल" मानते हैं? यदि 32 बिट डीएल के रूप में उपयोग के लिए यह भी regasm नहीं है।

अन्यथा आपको 32-बिट एप्लिकेशन सक्षम किए बिना इस एएसपी एप्लिकेशन को चलाने की आवश्यकता होगी ताकि यह 64 बिट के रूप में चलता है लेकिन फिर संभवतः यह एक कारण है जो इसे पहले स्थान पर सेट किया गया है। तो अगला कदम एक नया एप्लिकेशन पूल बनाना है जिसमें इस सेटिंग में न हो और इस पूल में एक अलग एप्लिकेशन के रूप में आपके एएसपी रन का एक हिस्सा बनाएं।

+1

मैंने इसे समझने की कोशिश में 3 घंटे बिताए। आप अपने उत्तर के लिए इतना कुछ है। इस सेटिंग ने काम किया - इसने एक विरासत साइट को 32-बिट ActiveX घटक के साथ कक्षा एएसपी चलाने की अनुमति दी। – carrabino

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