समस्या का समाधान: “FileNotFoundException” मेरी सुविधा रिसीवर के साथ.

मैं एक विशेषता है कि कुछ घटना रिसीवर एक विशिष्ट सूची इंस्टेंस के लिए जोड़ होगा पिछले सप्ताह पर काम कर रहा था. (मैं उस सूची यहाँ रिसीवर के बारे में थोड़ा blogged).

कमांड लाइन का उपयोग करना, मैं के साथ कोई त्रुटि इस सुविधा स्थापित कर सका (लेकिन नीचे छुपे हुए त्रुटि के लिए देखें). जब मैं साइट पर सुविधा को परिनियोजित करने के लिए करने की कोशिश की, एक "FileNotFoundException की काई की शिकायत" त्रुटि. इस ब्लॉग प्रविष्टि बताता है कि कैसे मैं इसे हल.

इस काई मेरे वेब ब्राउज़र में पता चला है कि त्रुटि है:

सुविधा ' b2cb42e3-4f0a-4380-aaba-1ef9cd526f20’ नहीं स्थापित किया जा सकता है क्योंकि घटना रिसीवर विधानसभा "xyzzyFeatureReceiver_0 की लोडिंग" में विफल रहा: System.IO.FileNotFoundException: फ़ाइल या असेंबली लोड नहीं कर सका ' xyzzyFeatureReceiver_0’ या इसके निर्भरताएँ में से एक. सिस्टम निर्दिष्ट फ़ाइल नहीं ढूँढ सकता.
फ़ाइल का नाम: ' xyzzyFeatureReceiver_0’
पर System.Reflection.Assembly.nLoad(AssemblyName फ़ाइल का नाम, स्ट्रिंग codeBase, प्रमाण assemblySecurity, विधानसभा locationHint, StackCrawlMark& stackMark, बूलियन throwOnFileNotFound, बूलियन forIntrospection)
पर System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, प्रमाण assemblySecurity, StackCrawlMark& stackMark, बूलियन forIntrospection)
पर System.Reflection.Assembly.InternalLoad(स्ट्रिंग assemblyString, प्रमाण assemblySecurity, StackCrawlMark& stackMark, बूलियन forIntrospection)
पर System.Reflection.Assembly.Load(स्ट्रिंग assemblyString)
पर Microsoft.SharePoint.Administration.SPFeatureDefinition.get_ReceiverObject()
WRN: असेंबली बाइंडिंग लॉगिंग चालू है रवाना.
विधानसभा बाँध विफलता लॉगिंग को सक्षम करने के लिए, रजिस्ट्री मान को सेट करें [HKLMSoftwareMicrosoftFusion!EnableLog] (DWORD) करने के लिए 1.
नोट: वहाँ कुछ प्रदर्शन विधानसभा बाँध विफलता लॉगिंग के साथ जुड़े जुर्माना है.
इस सुविधा को बंद करने के लिए, रजिस्ट्री मान निकालें [HKLMSoftwareMicrosoftFusion!EnableLog].

Windows SharePoint सेवाओं के साथ समस्याओं का निवारण.

मुझे पता कैसे जान-बूझकर उस त्रुटि का कारण: असेंबली GAC में स्थापित न करें. लेकिन, इसे GAC में था. मैं आम तौर पर असेंबलियों GAC में उन्हें में सी खींच कर स्थापित करें:\windowsassembly फ़ोल्डर windows explorer का उपयोग कर. मैं कभी नहीं महसूस किया है 100% आराम से कर रही है कि क्योंकि मैं हमेशा सोचा कि gacutil एक कारण के लिए अस्तित्व में … इसलिए मैंने कोशिश की है कि. यह कोई फर्क नहीं.

मैं Internets की खोज की और इस पोस्ट पाया: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2243677&SiteID=1

पोस्टर कोड का एक ही जड़ सा प्रयोग किया हुआ (इस सूची से अंदर WSS किताब से) इतना था कि एक उम्मीद है साइन इन करें. हालांकि, विधानसभा के साथ सजाने का सुझाव एक [विधानसभा: ] निर्देशक भाव मुझे नहीं बना था. मैं यह वैसे भी करने की कोशिश की और मैं सही था. यह कोई फर्क नहीं.

तब मैंने देखा कि मेरे वर्ग परिभाषा सार्वजनिक नहीं था. मैं इसे सार्वजनिक कर दिया और जो कोई अंतर नहीं किया.

अगले, मैं "विधानसभा बाँध विफलता लॉग को सक्षम करने की मुसीबत के लिए चला गया" (उपयोगी और सटीक निर्देशों का पालन प्रदान की) और यह वह जगह है जहाँ बातें दिलचस्प मिल शुरू कर दिया. उस लॉग मुझे पता चलता है कि रनटाइम हर जगह मेरा विधानसभा के लिए उस सर्वर पर खोज रहा है. यह भी इसके लिए मेरी दवा कैबिनेट में खोज किया जा करने के लिए प्रकट होता है. लेकिन … यह इसके लिए GAC में खोज नहीं होगा.

मैं मेरे सर्दियों जैकेट पर डाल दिया और Internets खोज फिर से जाने और लगता कि किसी को भी इस समस्या थी गया है. कुछ भी नहीं है में बंद लंबी चर्चा कि पोस्टिंग में पीटर्स और मैं एक समाधान नहीं ढूँढ सकता.

मैं मेरा विधानसभा लॉग का दावा है कि यह खोज रहा है और मैं एक छोटे से अधिक प्रगति कर स्थानों में से एक में ले जाएँ. मैं इस सुविधा को सक्रिय करने का प्रयास करते समय मैं ब्राउज़र में एक नया त्रुटि के साथ पुरस्कृत कर रहा हूँ:

"XyzzyFeatureReceiver_0" विधानसभा से फ़ीचर पानेवाला ऑब्जेक्ट बनाने में विफल रहा, "Conchango.xyzzyFeatureReceiver टाइप" सुविधा b2cb42e3-4f0a-4380-aaba-1ef9cd526f20 के लिए: System.ArgumentNullException: मान रिक्त नहीं हो सकता.
पैरामीटर नाम: प्रकार
पर System.Activator.CreateInstance(प्रकार प्रकार, बूलियन nonPublic)
पर System.Activator.CreateInstance(प्रकार प्रकार)
पर Microsoft.SharePoint.Administration.SPFeatureDefinition.get_ReceiverObject()

Windows SharePoint सेवाओं के साथ समस्याओं का निवारण.

Internets के लिए एक अंतिम यात्रा के लिए समय!

मैं इस समय पता लगाना, जाहिर है पर्याप्त, मुद्दों कि काई इस त्रुटि क्योंकि असेंबली GAC में नहीं है.

मैं कुछ इस से बाहर सकारात्मक हो और मैं बना लिया है कि एक छोटे गर्व महसूस करने की कोशिश करना चाहते हैं MSIL विधानसभाओं का भगोड़ा, लेकिन यह काम नहीं कर रहा है. मैं सिर्फ सादा नाराज़ हूँ. मैं अपने आप को गुनगुन "चिकन या अंडा ढूँढना" मेरी सांस के तहत.

मैं अंत में बाज़ी करने का फैसला. मैं एक पूरी तरह से नया प्रोजेक्ट बनाएँ और इस नई परियोजना के लिए incredible-cloaked-from-the-GAC-assembly से अधिक गैर-कार्य परियोजना से कोड कॉपी/पेस्ट. (मैं एक बिल्ड असेंबली GAC में स्थापित तो बंधन से छुपाएँ"की तरह कुछ नामक ध्वज के लिए देखो" लेकिन एक मिल नहीं कर सकता).

मैं इस सुविधा को स्थापित और यह सक्रिय और … यह काम करता है! तो, उस सब के बाद, मैं मूल रूप से किया था ' रिबूट’ मेरी परियोजना. यह एक और कारण क्यों मैं कंप्यूटर से नफरत है.

मैं इस से उपयोगी कुछ सीख किया था. मैं सुविधाओं के सभी दिन लंबे समय stsadm आदेश पंक्ति का उपयोग किया गया था स्थापित करने और उपयोग कर रहा है "-बल" आदत से बाहर विकल्प. किसी कारण के लिए, मैं का उपयोग नहीं किया था जब मैं इस नई परियोजना स्थापित - बल विकल्प. इस बार, मैं वास्तव में किया था, सही मायने में इस नई परियोजना की असेंबली में GAC की प्रतिलिपि करने के लिए भूल जाते हैं. एक परिणाम के रूप में, मैं उस "FielNotFoundException प्राप्त" त्रुटि. इस बार, मेरे पास यह stsadm से, जब मैं वेब ब्राउज़र के माध्यम से इस सुविधा को सक्रिय करने की कोशिश की नहीं. तो, -बल वास्तव में दो भूमिकाएं निभाता. यह एक मौजूदा सुविधा को पुन: स्थापित करने के लिए आप की अनुमति देता है. यह भी कि रनटाइम पर काम नहीं कर सकते त्रुटि दबा द्वारा एक छोटी गाड़ी सुविधा को स्थापित करने के लिए आपको अनुमति देता है. यह शायद कहीं मदद में ज्यादा के रूप में कहते हैं, लेकिन मैंने कभी नहीं देखा है यह.

</अंत>

3 पर विचार "समस्या का समाधान: “FileNotFoundException” मेरी सुविधा रिसीवर के साथ.

  1. फ्रांसिस्को

    भी, मैं था मेरी 2 जब मैं Namespace पर फ़ीचर पानेवाला का नाम hysteric nintendoSIXTYFOURRRR-में एक बुरी-तरह क्षणों के घंटे, ट्रैक की मदद करने के लिए जहां तुम्हारा या किसी और की लगे.

  2. फ्रांसिस्को

    समस्या की जड़ को sharepoint डेटाबेस में तैनात wsp पर झूठ. मैं अपनी पोस्ट पढ़ें और, जबकि यह वास्तव में समस्या को सुलझाने हम कई परियोजनाओं के साथ एक बहुत बड़ा समाधान है और इतना सब कुछ चलती फ़ाइलों के दर्जनों के एक विकल्प नहीं था.

    कोई बात नहीं आप कितना आपके GAC या आपके असेंबली का अद्यतन, क्या आप दे रही है परेशानी विधानसभा में वर्तमान WSP पर sharepoint स्थापित है.

    आप कर सकते हैं आसानी से पाया है कि केवल समाधान वापस लेना करने के लिए कोशिश कर रहा द्वारा (जो जहाँ त्रुटि होता है). सब कुछ "Retracting समय पर हो रहा" "तैनात wsp" पर विचार किया जाना चाहिए-न केवल इस परियोजना ही.

    मेरा workaround था:

    – केंद्रीय व्यवस्थापक: समाधान को रद्द
    – stsadm: deletesolution
    – दृश्य स्टूडियो => परियोजना => पैकेज
    – stsadm: addsolution-ProjectbinDebugProject.wsp फ़ाइल
    – stsadm: deploysolution-नाम project.wsp-तत्काल - allowgacdeployment-बल
    – दृश्य स्टूडियो => का परिनियोजन

    मैं भी बिन और डीबग फ़ोल्डर से परियोजना तैनात पुन: चलाने से पहले हटाया, किसी भी प्रभाव नहीं हो सकता है लेकिन टिप्पणी के लायक.

    यह दोनों के लिए काम करता है

    "सुविधा … नहीं स्थापित किया जा सकता है क्योंकि घटना रिसीवर विधानसभा की लोडिंग"
    और
    "असेंबली से फ़ीचर पानेवाला ऑब्जेक्ट बनाने में विफल"

    धन्यवाद!
    फ्रांसिस्को

  3. टॉम Clarkson

    बस इस एक ही मुद्दे को ठीक है और बस परियोजना पुनः बनाने से भी एक बेहतर समाधान पाया करने के लिए कोशिश कर रहा घंटे के एक जोड़े खर्च.

    यह कि बाहर Visual Studio करने के बजाय x 86 x 64 या MSIL निर्माण का लक्ष्य रखा था किसी कारण के लिए चालू – असेंबली में GAC था, न सिर्फ एक ही GAC कि 64 बिट SharePoint देख रहा था.

करने के लिए एक उत्तर दें छोड़ दो फ्रांसिस्को उत्तर रद्द करे

आपका ईमेल पता प्रकाशित नहीं किया जाएगा. अपेक्षित स्थानों को रेखांकित कर दिया गया है *