עבדתי על תכונה בשבוע שעבר היה מוסיף כמה מקלטים האירוע מופע ספציפי ברשימה. (אני blogged קצת את המקלט הרשימה כאן).
באמצעות שורת הפקודה, אני יכול להתקין את התכונה עם הודעת שגיאה (אך ראה להלן השגיאה מוסתרים). כאשר ניסיתי לפרוס את התכונה באתר, מוס התלוננו על FileNotFoundException"" שגיאה. את הבלוג מתאר איך פתרתי את זה.
זו השגיאה מוס הראה לי בדפדפן אינטרנט:
התכונה ' b2cb42e3-4f0a-4380-אודי לוין-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. כדי לאפשר רישום כשל איגוד הרכבה, הגדר את ערך הרישום [HKLMSoftwareMicrosoftFusion!EnableLog] (DWORD) כדי 1. הערה: יש איזה עונש הביצועים המשויכים רישום כשל איגוד הרכבה. כדי לבטל תכונה זו, הסר את ערך הרישום [HKLMSoftwareMicrosoftFusion!EnableLog].
פתרון בעיות עם Windows SharePoint Services.
|
אני יודע כיצד בכוונה לגרום לשגיאה הזאת: לא התקנת ההרכבה ב- GAC. אבל, זה היה ב- GAC. אני בדרך כלל התקן הרכבות GAC על ידי גרירתם לתוך הארובות:\windowsassembly תיקיה באמצעות סייר windows. אף פעם לא הרגשתי 100% נוח לעשות את זה. כי תמיד חשבתי ש-gacutil זה קיים מסיבה מסוימת … אז ניסיתי את זה. זה לא משנה.
חיפשתי את Internets ומצאתי פוסט זה: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2243677&SiteID=1
הפוסטר קרה משתמש הסיבית שורש באותו קוד (מתוך הספר בתוך WSS מרשימה זו) אז זה היה סימן. עם זאת, הצעתו של לקשט את מכלול עם [הרכבה: ] הוראה לא הגיוני בשבילי. ניסיתי את זה בכל מקרה. ואני צדקתי. זה לא משנה.
ואז הבחנתי כי הגדרת מחלקה שלי איננה ציבורית. אני הכנתי את זה הציבור וזה גרם אין הבדל.
הבא, אני ניגש לשולחן של הפיכת "מכלול bind כשל ביומן" (בעקבות ההוראות מדויקות ומסייע מסופקים) כאן הדברים התחיל להיות מעניין. יומן הרישום מראה לי כי זמן הריצה הוא חיפוש בכל מקום בשרת זה להרכבה שלי. הוא אפילו מופיע כדי לחפש אותו בארון תרופות. אבל … זה לא לחפש אותם ב- GAC.
. תלבש את הז'קט החורף שלי ו ללכת לחפש את Internets שוב, למצוא. מישהו אכל את הבעיה גם. הדיון הממושך הזה רישום פיטרס לתוך כלום ואני לא מוצא פתרון.
אני עובר באחד המקומות שהיומן טוען זה מחפש להתקדם עוד קצת את הרכבה. אני מתוגמל שגיאת חדש בדפדפן כאשר אני מנסה להפעיל את תכונת:
יצירת האובייקט המקבל תכונה מהרכבה "xyzzyFeatureReceiver_0" נכשלה, הקלד "Conchango.xyzzyFeatureReceiver" עבור תכונה b2cb42e3-4f0a-4380-aaba-1ef9cd526f20: System.ArgumentNullException: ערך אינו יכול להיות null. שם פרמטר: סוג ב- System.Activator.CreateInstance(סוג, NonPublic בוליאנית) ב- System.Activator.CreateInstance(סוג) ב- Microsoft.SharePoint.Administration.SPFeatureDefinition.get_ReceiverObject()
פתרון בעיות עם Windows SharePoint Services.
|
זמן לעוד נסיעה אחת אחרונה האינטרנט במלואו!
הפעם אני אגלה, כצפוי מספיק, מוס בעיות שגיאה זו, כי מכלול זה לא ב- GAC.
אני רוצה לקנות משהו חיובי מזה ולנסות להרגיש קצת גאה שאני יצרתי נמלט מכלולים MSIL, . אבל זה לא עובד. . אני פשוט כועס. אני מוצא את עצמי ממלמל "הביצה או התרנגולת" תחת נשימתי.
סוף סוף החלטתי פונט. ליצור פרוייקט חדש לגמרי, ואני העתק/הדבק הקוד מהפרוייקט שאינו עבודה incredible-cloaked-from-the-GAC-assembly על הפרוייקט החדש הזה. (אני מחפש דגל לבנות סינדרום "הסתר מהרכבה מחייב אם מותקן ב- GAC" אבל לא יכול למצוא אחד).
התקנת התכונה ולהפעיל אותו, … זה עובד! כל כך, אחרי כל זה, נאלצתי בעיקרון ' אתחול מחדש’ הפרוייקט שלי. זוהי סיבה נוספת למה אני שונא מחשבים.
. למדתי משהו מועיל מזה. אני היה מתקין תכונות באמצעות שורת הפקודה stsadm כל היום כבר בשימוש "-כוח" אפשרות מתוך הרגל. מסיבה כלשהי, לא השתמשתי בכוח האפשרות - כאשר התקנתי את הפרוייקט החדש. הפעם, עשיתי למעשה, באמת לשכוח להעתיק ההרכבה של הפרוייקט החדש הזה לתוך GAC. כתוצאה מכך, קיבלתי את FielNotFoundException"" שגיאה. הפעם, קיבלתי אותה stsadm, לא כאשר ניסיתי להפעיל את תכונת באמצעות דפדפן האינטרנט. כל כך, -כוח למעשה ממלא שני תפקידים. זה מאפשר לך להתקין מחדש את תכונה הקיימת. זה גם מאפשר לך להתקין תכונה מרכבה זה לא יכול לעבוד בזמן ריצה על-ידי דיכוי השגיאה. זה כנראה אומר באותה מידה ב עזרה איפשהו אבל שלא הבחנתי בה.
</קצה>