Aš dirbau funkcija praeitą savaitę, kuri būtų pridėti kai kurios įvykio imtuvai prie konkretaus sąrašo egzemplioriaus. (Aš blogų šiek tiek apie tą sąrašą imtuvas čia).
Naudodami komandų eilutę, Aš galėtų įdiegti funkciją be klaidos (bet apačioje galite rasti paslėptus klaida). Kai aš bandžiau įdiegti funkciją svetainėje, SAMANŲ skundėsi "FileNotFoundException" klaida. Šio dienoraščio įrašas apibūdina kaip aš ją spręsti.
Tai yra klaida, kad MOSS parodė man naršyklėje:
Funkcija "b2cb42e3-4f0a-4380-Goda-1ef9cd526f20’ gali būti įdiegta, nes pakrovimo iki renginio rinkinio "xyzzyFeatureReceiver_0" Nepavyko: System.IO.FileNotFoundException: Nepavyko įkelti failo arba surinkimas "xyzzyFeatureReceiver_0’ arba vienas iš jam priklausančiųjų. Sistema negali rasti nurodyto failo.
Failo vardas: "xyzzyFeatureReceiver_0’
ne System.Reflection.Assembly.nLoad(AssemblyName failo vardas, Styginių Mac os x, Įrodymų assemblySecurity, Asamblėjos locationHint, StackCrawlMark& stackMark, Bulio logikos throwOnFileNotFound, Bulio logikos forIntrospection)
ne System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, Įrodymų assemblySecurity, StackCrawlMark& stackMark, Bulio logikos forIntrospection)
ne System.Reflection.Assembly.InternalLoad(Eilutės assemblyString, Įrodymų assemblySecurity, StackCrawlMark& stackMark, Bulio logikos forIntrospection)
ne System.Reflection.Assembly.Load(Eilutės assemblyString)
ne Microsoft.SharePoint.Administration.SPFeatureDefinition.get_ReceiverObject()
WRN: Asamblėjos privalomas registravimas yra įjungtas, išjungtas.
Kad būtų galima Asamblėja jungiasi nepavyko prisijungti, nustatyti registro reikšmė [HKLMSoftwareMicrosoftFusion!EnableLog] (DWORD) į 1.
Pastaba: Yra kai kurie atlikti bausmę, susijusios su surinkimo susieti nepavyko prisijungti.
Norėdami šią funkciją išjungti, pašalinti registro reikšmė [HKLMSoftwareMicrosoftFusion!EnableLog].
Aš žinau, kaip sąmoningai sukelti tos klaidos: Nediekite Asamblėja GAC. bet, tai buvo GAC. Aš paprastai įdiegti rinkinius į GAC vilkdami juos į c:\windowsassembly katalogą naudojant windows explorer. Aš niekada nesijaučiau 100% patogus darysim, nes aš visada maniau, kad gacutil egzistuoja priežasties … Taigi, aš bandžiau, kad. Nėra jokio skirtumo.
Aš ieškojote internetas ir rasti šį pranešimą: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2243677&SiteID=1
Plakato teko naudoti į patį šaknis šiek tiek kodas (iš viduje WSS knygos iš šio sąrašo) Taigi tai buvo vilties ženklas. Tačiau, dekoravimo asamblėjai, pateikdama pasiūlymą dėl [Asamblėja: ] direktyvoje nėra prasmės man. Aš bandžiau ją vistiek ir aš buvau teisus. Nėra jokio skirtumo.
Tada aš pastebėjau, kad mano klasės apibrėžimas nebuvo viešųjų. Aš tai viešai, ir kad nėra jokio skirtumo.
Kitas, Nuėjau į bėdą leidžia "surinkimo susieti gedimo žurnalą" (po naudinga ir tikslūs nurodymai pateikė) ir tai, kur daiktai pradėjo gauti įdomių. Kad žurnalas rodo man, kad vykdyklės visur ieško to serverio mano montavimui. Net atrodo, kad būtų ieškoti tai mano medicinos kabinetas. bet … jis nebus ieškoti GAC.
Aš įdėti mano žiemos striukė ir eiti ieškoti internetas vėl ir rasti, kad kažkas turėjo šią problemą per. Ilga diskusija, kad registravimo peters ne į nieko ir aš negaliu rasti išeitį.
Aš perkelti mano surinkimas į vieną žurnalą teigia jis ieško ir aš šiek tiek daugiau pažangos vietų. Aš esu atlyginta su naujų klaidų naršyklėje kai bandau įjungti funkciją:
Nepavyko sukurti funkcija imtuvas objekto iš rinkinio "xyzzyFeatureReceiver_0", Įveskite "Conchango.xyzzyFeatureReceiver" dėl funkcija b2cb42e3-4f0a-4380-aaba-1ef9cd526f20: System.ArgumentNullException: Reikšmė negali būti nulinė.
Parametro pavadinimas: tipo
ne System.Activator.CreateInstance(Tipo tipo, Bulio logikos nonPublic)
ne System.Activator.CreateInstance(Tipo tipo)
ne Microsoft.SharePoint.Administration.SPFeatureDefinition.get_ReceiverObject()
Laiko viena paskutinė kelionė į internetas!
Šį kartą aš sužinoti, tikėtis pakankamai, kad MOSS klausimai ši klaida nes Asamblėja nėra GAC.
Noriu ką nors teigiamo iš šios ir Stenkis, šiek tiek didžiuojuosi, kad aš sukūriau su Bėglys, MSIL mazgai, bet jis neveikia. Aš esu tik paprastas annoyed. Manau, pats Mamroczący "vištienos ar kiaušinis" pagal mano kvėpavimas.
Aš pagaliau nuspręsti kamuolio išmušimas iš rankų. Sukurti visiškai naują projektą ir kopijuoti/įklijuoti kodą iš incredible-cloaked-from-the-GAC-assembly ne darbo projektas per šį naują projektą. (Aš ieškoti statyti vėliava vadinamas kažką panašaus į "slėpti nuo surinkimo privalomas Jei įdiegta GAC" bet negali rasti).
Aš įdiegti funkciją ir ją aktyvuoti ir … jis veikia! Taigi, Galų gale, kad, Man teko iš esmės "perkrauti’ mano projektas. Tai dar viena priežastis, kodėl aš nekenčiu kompiuterių.
Aš sužinojau kažką naudingo iš šio. Aš turėjo buvo diegiamos funkcijos naudojant stsadm komandinės eilutės visą dieną ir buvo naudojant su "-jėga" galimybė iš įpročio. Dėl tam tikrų priežasčių, I didn't naudoti-force parinktį įdiegus naują projektą. šį kartą, Aš iš tikrųjų, tikrai pamiršti kopijuoti šį naują projektą surinkimas į GAC. Todėl, Aš gavau tą "FielNotFoundException" klaida. šį kartą, Aš tai iš stsadm, ne tada, kai aš bandžiau aktyvuoti funkciją per interneto naršyklę. Taigi, -pajėgos iš tikrųjų vaidina du vaidmenis. Ji leidžia iš naujo įdiegti esamos funkcijos. Ji taip pat leidžia įdiegti buggy funkcija, kuri negali darbo vykdymo metu slopina klaida. Ji tikriausiai sako kiek žinyne kažkur, bet aš niekada pastebėjau.
</pabaigos>
Taip pat, Aš turėjau mano 2 valandos, hysteric nintendoSIXTYFOURRRR-į-a-blogai-way akimirkos, kada aš pervadintas Namespace funkcija imtuvas, sekti kur tavo ar kažkieno pradėjo.
Problemos šaknis yra dislokuoti RSA sharepoint duomenų bazėje. Aš perskaičiau jūsų pranešimą ir nors jis iš tiesų išspręsti šią problemą turime didžiulį sprendimą su keliais projektais ir dešimtys failus taip juda viskas buvo ne galimybė.
Nesvarbu, kiek jūs atnaujinsite savo GAC ar jūsų rinkinys, kas suteikia jums problemų yra Asamblėja, Dabartinis RSA įdiegti "sharepoint".
Jūs lengvai galite pastebėjau, kad bando tik atsisakyti sprendimo (Tai kur klaida atsitinka). Viskas vyksta "įtraukimo laiku" turėtų būti laikoma "vykstančioje RSA"-tik ne paties projekto.
Mano problemos buvo:
– Vidurio administratorius: Atšaukti sprendimą
– stsadm: deletesolution
– Visual Studio => Projekto => Paketas
– stsadm: addsolution-failo ProjectbinDebugProject.wsp
– stsadm: deploysolution-pavadinimas project.wsp-nedelsiant - allowgacdeployment-jėga
– Visual Studio => Diegti
Aš taip pat ištrinti bin ir derinimo aplankus iš projekto prieš pradedant diegti dar kartą, gali neturėti jokio poveikio, bet verta komentuoti.
Tai tinka tiek
"Funkcija … gali būti įdiegta, nes pakrovimo iki renginio rinkinio"
ir
"Nepavyko sukurti funkcija imtuvas objekto iš rinkinio"
ačiū!
Francisco
Tiesiog praleido keletą valandų bando išspręsti tą pačią problemą ir rasti geresnis sprendimas nei tiesiog naujo projekto.
Paaiškėjo, kad dėl tam tikrų priežasčių Visual Studio užsibrėžusi sukurti tikslinės x 86 vietoj x 64 arba MSIL – Asamblėja buvo GAC, tik ne pačios GAC, 64 šiek tiek SharePoint ieškojau.