Я працював над функція минулого тижня, яка б додати деякі події приймачі до певного списку екземпляр. (Я blogged трохи про цього списку приймач тут).
За допомогою командного рядка, Я міг встановити функцію з помилки не (Але див. нижче для прихованих помилка). Коли я спробував розгортання функція на сайті, ЛИШАЙНИК скаржилася на "FileNotFoundException" помилка. Цей запис у блозі описує, як я вирішив її.
Це помилка, що МОСС показав мені, у веб-переглядачі:
Функція "b2cb42e3-4f0a-4380-aaba-1ef9cd526f20’ не може бути встановлена, тому що завантаження подія ресивер Асамблеї "xyzzyFeatureReceiver_0" не вдалося: System.IO.FileNotFoundException: Не вдалося завантажити файл або складання ' xyzzyFeatureReceiver_0’ або одного з його залежних елементів. Системі не вдалося знайти вказаний файл. Ім'я файлу: ' xyzzyFeatureReceiver_0’ на System.Reflection.Assembly.nLoad(Ім'я файлу AssemblyName, Рядок в коді, Докази 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: Асамблея прив'язування журналювання ввімкнуто OFF. Щоб увімкнути Асамблеї bind Помилка журналювання, значення реєстру [HKLMSoftwareMicrosoftFusion!EnableLog] (DWORD) Щоб 1. Примітка: Є деякі виконання страти, пов'язаних з Асамблеї bind Помилка журналювання. Щоб вимкнути цю функцію, видалити значення реєстру [HKLMSoftwareMicrosoftFusion!EnableLog].
Усунення несправностей із Windows SharePoint Services.
|
Я знаю, як навмисно заподіяти цю помилку: не інсталювати складання у глобальному кеші Складань. Але, Це було в GAC. Я зазвичай інсталювати складання у глобальному кеші Складань, перетягнувши їх в д:\windowsassembly папку за допомогою провідника windows. Я ніколи не відчував 100% комфортно Роблячи це, тому що я завжди думав, що gacutil існував з причини … так що я спробував, що. Він зробив ніякої різниці.
Я шукав в Інтернеті і знайшов цей пост: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2243677&SiteID=1
Афіша довелося використовувати той же корінь трохи коду (з цього списку, книги всередині WSS) так, щоб було надій знак. Однак, пропозиція прикраси на зборі з на [Асамблея: ] Директива не має сенсу для мене. Я пробував все одно, і я був правий. Він зробив ніякої різниці.
Тоді я помітив, що моє визначення класу не була громадських. Я зробив це громадських і які зроблені ніякої різниці.
Наступний, Я пішов до проблеми сприятливе "Асамблея bind провал журналу" (дотримуючись інструкції, корисні та точні умови) і це, де речі почали отримувати цікаву. Що журнал показує мені, що виконання є пошук в усьому світі на цей сервер для мого Асамблеї. Навіть здається, шукати його в мій аптечці. Але … він не буде шукати його в GAC.
Я поклав на мій зимові куртки і йти Інтернет здійснення повторного пошуку і знайти, що хтось повинен був цим проблема занадто. Тривалі дискусії в цьому проводки Пітерс на нічого, і я косяк знаходити рішення.
Я перемістити мій Асамблеї в одне з місць, журнал стверджує, що вона є пошук і я зробити трохи більше прогресу. Я впевнений, винагороджені з новий помилка у браузері під час спроби активувати функцію:
Не вдалося створити функцію ресивер об'єкта зі складання "xyzzyFeatureReceiver_0", Введіть "Conchango.xyzzyFeatureReceiver" для функції b2cb42e3-4f0a-4380-aaba-1ef9cd526f20: System.ArgumentNullException: Значення не може бути невизначеним. Ім'я параметра: тип на System.Activator.CreateInstance(Тип типу, Булеві внутрішня) на System.Activator.CreateInstance(Тип типу) на Microsoft.SharePoint.Administration.SPFeatureDefinition.get_ReceiverObject()
Усунення несправностей із Windows SharePoint Services.
|
Час для одного останньої поїздки в Інтернет!
На цей раз я дізнатися, як і очікувалося досить, ЛИШАЙНИК видає цю помилку оскільки складання не GAC.
Я хочу, щоб отримати щось позитивне з цього і спробувати почувати себе трохи пишаємося тим, що я створив на Втікача MSIL вузлів, але він не працює. Я тільки простий роздратований. Я вважаю себе бурмочучи "яйце чи курка" під моїм подихом.
Я, нарешті, вирішити Пунт. Я створення абсолютно нового проекту і копіювати/вставити код від incredible-cloaked-from-the-GAC-assembly проект не працює над цим новим проектом. (Я дивлюся на побудувати прапор, називається щось на кшталт "Приховати зі складання обов'язковий, якщо інстальовано в GAC" але не можу знайти один).
Я встановити функцію і активувати його і … це працює! Так, Після все, що, Я повинен був в основному ' перезавантаження’ мій проект. Це ще одна причина, чому я ненавиджу комп'ютери.
Я дізнався щось корисне від цього. Я мав були особливості установки за допомогою командного рядка stsadm весь день і використовують на "-сила" параметр за звичкою. З різних причин, Я не використовую - сила опцію коли я встановив новий проект. Цього разу, Я зробив насправді, по-справжньому забудьте скопіювати цей новий проект складання у глобальному кеші Складань. У результаті, Я отримав цю "FielNotFoundException" помилка. Цього разу, Я отримав його від stsadm, не тоді, коли я намагався активувати функцію через веб-браузер. Так, -сила насправді грає дві ролі. Це дозволяє повторно інсталювати існуючі функції. Вона також дозволяє встановити баггі особливість, яка не може працювати під час виконання придушенні помилку. Це напевно говорить, що стільки в довідці десь, але я ніколи не помічав.
</кінець>