Bazı olay alıcıları belirli liste örneğine eklemek istiyorum bir özellik geçen hafta üzerinde çalışıyordu. (Ben biraz bu liste alıcı hakkında blogged).
Komut satırını kullanarak, I-ebil install özelliği ile herhangi bir hata (Ama gizli hata için aşağıya bakın). Ne zaman özelliği site dağıtmak için çalıştı, MOSS "FileNotFoundException şikayet etti." hata. Nasıl o münhal bu blog girişi açıklar.
Bu yosun gösterdi bana web tarayıcısında hatanın olduğunu:
Özellik ' b2cb42e3-4f0a-4380-aaba-1ef9cd526f20’ Çünkü yüklü değil olay alıcısı derlemesi "xyzzyFeatureReceiver_0 yükleme" başarısız oldu: System.IO.FileNotFoundException: Dosya veya derleme yüklenemedi ' xyzzyFeatureReceiver_0’ ya da bağımlılıklarından biri. Sistem belirtilen dosyayı bulamıyor. Dosya adı: ' xyzzyFeatureReceiver_0’ System.Reflection.Assembly.nLoad(AssemblyName dosya adı, Dize kod tabanı, Kanıt assemblySecurity, Meclis locationHint, StackCrawlMark& stackMark, Boole throwOnFileNotFound, Boole forIntrospection) System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, Kanıt assemblySecurity, StackCrawlMark& stackMark, Boole forIntrospection) System.Reflection.Assembly.InternalLoad(Dize assemblyString, Kanıt assemblySecurity, StackCrawlMark& stackMark, Boole forIntrospection) System.Reflection.Assembly.Load(Dize assemblyString) Microsoft.SharePoint.Administration.SPFeatureDefinition.get_ReceiverObject() UYR: Derleme bağlama günlüğü açık kapalı. Derleme bağlama hatası günlük kaydını etkinleştirmek için, kayıt defteri değerini ayarla [HKLMSoftwareMicrosoftFusion!EnableLog] (DWORD) Hedef 1. Not: Derleme bağlama hatası günlük ile ilişkili bazı performans ceza. Bu özelliği devre dışı bırakmak için, kayıt defteri değerini kaldırın [HKLMSoftwareMicrosoftFusion!EnableLog].
Windows SharePoint Services ile ilgili sorunları giderme.
|
Kasıtlı olarak bu hata neden bilmek.: derlemenin GAC'de yüklemeyin. Ama, GAC içerisinde yapıldı. Ben normalde GAC c sürükleyerek derlemelerinin:\windowsassembly klasörü Windows Gezgini'ni kullanarak. Hiç bir şey hissetmedim 100% Çünkü her zaman o gacutil rahat yapıyor bir sebebi var … çok denedim. Bu hiçbir fark yarattı.
Aramak belgili tanımlık enterne ve kurmak bu posta: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2243677&SiteID=1
Poster aynı kök bit kod kullanmaya oldu. (Bu listeden WSS içindeki defterinden) Yani o umut dolu bir işaretti. Ancak, derleme ile dekorasyon önerisi bir [derleme: ] yönergesi bana mantıklı gelmiyordu. Yine de denedim ve ben haklıydım. Bu hiçbir fark yarattı.
O zaman benim sınıf tanımının genel değildi fark. Ben kamuoyuna ve bu fark etti.
Sonraki, "Derleme bağlama hatası günlük etkinleştirme zahmetine girdim" (yararlı ve doğru yönergeleri izleyerek sağlanan) ve şeyler ilginç almaya başladığı yer. Bu günlük çalışma zamanı bu sunucudaki benim derleme için her yerde arıyor gösterir. Hatta bunun için benim ecza dolabında arama görünüyor. Ama … Bu GAC'de aramak olmayacak.
Ben benim kış ceket koymak ve Internets yeniden aramayı gidin ve birileri de bu sorunu olmuştur bulmak. Hiçbir şey bu nakil uzun tartışmada peters ve ı cant'bulmak a eriyik.
Onu arıyor ve ben biraz daha fazla ilerleme günlük iddia yerlerden biri benim derleme taşımak. Özelliği etkinleştirmeye çalıştığınızda tarayıcıda yeni bir hata ile ödüllendirilir:
"XyzzyFeatureReceiver_0" derlemesinden özelliği alıcı nesnesi oluşturulamadı, "Conchango.xyzzyFeatureReceiver yazın" özelliği b2cb42e3-4f0a-4380-aaba-1ef9cd526f20 için: System.ArgumentNullException: Değer null olamaz. Parametre adı: türü System.Activator.CreateInstance(Türü türü, Boole nonPublic) System.Activator.CreateInstance(Türü türü) Microsoft.SharePoint.Administration.SPFeatureDefinition.get_ReceiverObject()
Windows SharePoint Services ile ilgili sorunları giderme.
|
Bir son yolculuk için Internets için zaman!
Bu sefer ben bulmak, tahmin edilebileceği gibi yeterince, derlemenin GAC'de olmadığından MOSS bu hata sorunları.
Bundan olumlu bir şeyler ve ben oluşturduk biraz gurur hissetmeye denemek istiyorum. Kaçak MSIL derlemeleri, Ama onun'değil çalışma. Sadece düz rahatsız değilim. Kendimi "tavuk veya yumurta mırıldanıp bulmak" Nefesimi altında.
Sonunda kumar oynamak karar. Ben tamamen yeni bir proje oluşturmak ve bu yeni proje için incredible-cloaked-from-the-GAC-assembly çalışma dışı proje üzerinde koddan Kopyala/Yapıştır. (Derleme GAC'de yüklü değilse bağlama dan gizle"gibi bir şey olarak adlandırılan bir yapı bayrak için bak" Ama aradım ama).
Özelliği yüklemek ve etkinleştirmek ve … o inşaat! Yani, Bundan sonra, Temelde gerekiyordu ' yeniden doğmuş gibi’ benim proje. Bir başka neden niçin bilgisayarlardan nefret bu.
Bu işe yarar bir şey öğrendin. Gün boyu stsadm komut satırını kullanarak özelliklerini yükleme ve be istimal "-kuvvet" alışkanlıktan seçeneği. İçin biraz neden, Ben kullanmadım yeni proje yüklendiğinde - zorlama seçeneği. Bu sefer, Aslında yaptım, gerçekten unutmak-e doğru bu yeni projenin derleme GAC içine kopyalayın. Sonuç olarak, FielNotFoundException"aldı." hata. Bu sefer, Stsadm aldım, web tarayıcısı üzerinden özelliğini etkinleştirmek çalışırken değil. Yani, -kuvvet aslında iki rol oynar. Varolan bir özelliği yeniden yüklemenize olanak tanır. Ayrıca çalışma zamanında hata baskılayarak çalışamaz bir adamcağız özelliğini yüklemek verir. Muhtemelen olduğu kadar bir yere Yardım'diyor ama ben hiç fark.
</sonunda>