Problēmas risinājums: “FileNotFoundException” Ar savu funkciju uztvērējs.

Es biju darba par līdzekli pagājušajā nedēļā, kas varētu pievienot kādu notikumu uztvērēju īpašā sarakstā instance. (Es blogged mazliet par šo sarakstu uztvērējs šeit).

Izmantojot komandrindas, Nevarēja instalēt līdzekli ar kļūdas (bet tālāk skatiet slēpto kļūda). Kad es mēģināju izvietot līdzekli vietnē, MOSS sūdzējās par "FileNotFoundException" kļūda. Šī bloga ieraksts apraksta, kā es to atrisināt.

Šī ir kļūda, ka MOSS parādīja man web pārlūkprogrammā:

Līdzeklis ' b2cb42e3-4f0a-4380-aaba-1ef9cd526f20’ nevar instalēt, jo iekraušanas un notikumu uztvērēju montāža "xyzzyFeatureReceiver_0" neizdevās: System.IO.FileNotFoundException: Nevarēja ielādēt failu vai montāža "xyzzyFeatureReceiver_0’ vai viena no tā atkarībām. Sistēma nevar atrast norādīto failu.
Faila nosaukums: ' xyzzyFeatureReceiver_0’
pie System.Reflection.Assembly.nLoad(AssemblyName fileName, Virkne codeBase, Pierādījumus, assemblySecurity, Montāžas locationHint, StackCrawlMark& stackMark, Būla throwOnFileNotFound, Būla forIntrospection)
pie System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, Pierādījumus, assemblySecurity, StackCrawlMark& stackMark, Būla forIntrospection)
pie System.Reflection.Assembly.InternalLoad(Virkne assemblyString, Pierādījumus, assemblySecurity, StackCrawlMark& stackMark, Būla forIntrospection)
pie System.Reflection.Assembly.Load(Virkne assemblyString)
pie Microsoft.SharePoint.Administration.SPFeatureDefinition.get_ReceiverObject()
WRN: Asamblejas saistošu reģistrēšana ir ieslēgta OFF.
Lai iespējotu asamblejas sasaistīt neveiksmes reģistrēšanu, iestatīt reģistra vērtību [HKLMSoftwareMicrosoftFusion!EnableLog] (DWORD) lai 1.
Piezīme: Tur ir daži veiktspējas soda saistīta ar asamblejas sasaistīt neveiksmes reģistrēšanas.
Lai izslēgtu šo līdzekli, noņemiet reģistra vērtību [HKLMSoftwareMicrosoftFusion!EnableLog].

Novērst problēmas ar Windows SharePoint Services.

Es zinu, kā apzināti radīt kļūdas: neinstalēt montāža GAC. bet, tas bija GAC. Es parasti instalēt GAC mezgli, ievelkot tos c:\windowsassembly mapi, izmantojot programmu windows explorer. Man nekad nav bijušas 100% ērti izdarīt, jo es vienmēr domāju, ka gacutil pastāvēja iemesls … tāpēc es mēģināju, ka. Tam nebija nekādas nozīmes.

Man meklēt Internets un uzskatīja, ka šis post: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2243677&SiteID=1

Plakātu notika izmantojot pašu saknes bitu kodu (no iekšpuses WSS grāmatas no šī saraksta) tāpēc, ka bija cerību zīmi. Tomēr, apdare ar montāžas ierosinājums [Asambleja: ] direktīvā nav jēgas man. Es to izmēģināju anyway, un man bija taisnība. Tam nebija nekādas nozīmes.

Tad es pamanīju, ka mana klases definīcija nav valsts. Es tā publiski un kas nebija nekādas nozīmes.

Nākamo, Es devos uz pūlēties un ļaujot "montāžas sasaistīt neveiksmes log" (pēc tam noderīgi un precīzas instrukcijas) un tas ir, ja lietas sāk iegūt interesantu. Šī žurnāla liecina, ka izpildlaika visur meklēt šajā serverī manu montāžai. Šķiet, tas pat būtu meklē manu medicīnas kabinets. bet … tas paradis meklēt to GAC.

Es likts uz ziemas jaku un doties meklēt Internets vēlreiz un atrast, ka kādam ir bijusi šī problēma, pārāk. Garas diskusijas, grāmatošana peters prom neko un nevar atrast risinājumu.

Es manu asamblejas ievācas vienā no vietas žurnāls apgalvo, tas meklē, un es nedaudz vairāk progresēt. Esmu apbalvota ar jaunu pārlūku kļūdu mēģinot aktivizēt funkciju:

Neizdevās izveidot līdzekļa saņēmēja objektu no montāžas "xyzzyFeatureReceiver_0", ierakstiet "Conchango.xyzzyFeatureReceiver" par funkciju b2cb42e3-4f0a-4380-aaba-1ef9cd526f20: System.ArgumentNullException: Vērtība nevar būt null.
Parametra nosaukums: tips
pie System.Activator.CreateInstance(Tips, Būla nonPublic)
pie System.Activator.CreateInstance(Tips)
pie Microsoft.SharePoint.Administration.SPFeatureDefinition.get_ReceiverObject()

Novērst problēmas ar Windows SharePoint Services.

Reizi vienu pēdējā reisā uz Internets!

Šajā laikā uzzināt, prognozējamu pietiekami, SŪNA jautājumiem šī kļūda, jo montāža nav GAC.

Es gribu kaut ko pozitīvu šajā lietā un mēģināt justies mazliet lepna, ka esmu izveidojis Bēglis MSIL komplekti, bet tas nedarbojas. Es esmu tikai plain annoyed. Es atrodu sevi murminādami "Vista vai ola" saskaņā ar manu elpu.

Beidzot nolemjat punt. Es izveidot pilnīgi jaunu projektu un kopēt/ielīmēt kodu no incredible-cloaked-from-the-GAC-assembly nestrādājošu projekta gaitā, lai šo jauno projektu. (Es paskatos uz veidot karogu sauc par kaut ko līdzīgu "slēpt no montāžas saistošu, ja instalēta GAC" bet nevaru atrast kādu).

Es instalēt līdzekli un aktivizējiet to un … tas darbojas! Tik, pēc tam visi, Nācās būtībā ' atsāknēšana’ mans projekts. Tas ir vēl viens iemesls, kāpēc es naida datori.

Man bija uzzināt kaut ko noderīgu no šī. Man bija instalēt līdzekļus, izmantojot komandrindas stsadm visas dienas garumā un lietojušas "-spēks" opcija no paraduma. Kāda iemesla dēļ, I neizmantoja - uzspiešanas opcijas instalējot jaunu projektu. šoreiz, Man bija faktiski, patiesi aizmirst kopēt šo jauno projektu montāža GAC. Kā rezultātā, Es saņēmu "FielNotFoundException" kļūda. šoreiz, Es guvu stsadm, nevis tad, kad es mēģināju, aktivizējiet šo funkciju, izmantojot web pārlūkprogrammu. Tik, -spēkā faktiski spēlē divas lomas. Tas ļauj atkārtoti instalēt esošo līdzekli. Tā arī ļauj jums uzstādīt buggy iezīme, kas nevar strādāt pie runtime, anulējot kļūda. Tas droši vien saka tik daudz palīdzības kaut_kur taču nekad ievērojuši, tas.

</beigās>

Technorati Tags: Technorati Tags: ,

3 domas par "Problēmas risinājums: “FileNotFoundException” Ar savu funkciju uztvērējs.

  1. Francisco

    Arī, Man bija mana 2 hysteric nintendoSIXTYFOURRRR,--slikti-vienvirziena brīžos, kad es pārdēvēja Namespace līdzeklis uztvērēju stundas, lai palīdzētu izsekot, kur jums, vai kāds cits sākās.

    Atbilde
  2. Francisco

    Saknes problēma slēpjas par īstenotiem wsp sharepoint datu bāzē. Es izlasīju jūsu sūtījums, un, lai gan tas tiešām jāizlabo problēma mums ir milzīgs risinājums ar vairākiem projektiem un desmitiem failus, tāpēc viss virzās uz turieni braukt nevarēja.

    Neatkarīgi no tā, cik daudz jūs atjaunināt jūsu GAC vai jūsu montāža, ko dod jums nepatikšanas ir asambleja savā pašreizējā WSP instalēti sharepoint.

    Jūs varat viegli pamanījuši, ka, mēģinot tikai atsauktu risinājumu (proti, ja notiek kļūda). Viss notiek "savilkšanās laiks" būtu jāapsver "izvietoto wsp"-ne tikai projekta.

    Mans risinājums bija:

    – Centrālās administrēšanas: Atcelt risinājums
    – stsadm: deletesolution
    – Visual Studio => Projekta => Pakete
    – stsadm: addsolution-faila ProjectbinDebugProject.wsp
    – stsadm: izvietošanas risinājuma-nosaukums project.wsp-tūlītēja - allowgacdeployment-spēks
    – Visual Studio => Izvietot

    Es izdzēsta arī mapju bin un atkļūdošanas no projekta pirms izvietošanas vēlreiz palaist, iespējams, nav nekādas ietekmes, bet vērts komentēt.

    Tas darbojas gan

    "Funkciju … nevar instalēt, jo iekraušanas un notikumu uztvērēju montāža"
    un
    "Neizdevās izveidot līdzekļa saņēmēja objektu no montāžas"

    paldies!
    Francisco

    Atbilde
  3. Tom Clarkson

    Tikko pavadīju pāris stundas mēģina noteikt šo vienu un to pašu jautājumu un konstatēja, ka labāks risinājums nekā vienkārši atjaunošanās projekta.

    Izrādījās, ka kaut kādu iemeslu dēļ Visual Studio bija noteikts mērķis veidot uz x86 nevis x 64 vai MSIL – Asambleja bija GAC, tikai ne paša GAC, 64 bit neraugās uz SharePoint.

    Atbilde

Atstāt atbilde Francisco Atcelt atbildi

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti *