Düzeltme: Visual Studio 2008'de Microsoft.VisualStudio.Shell.Interop.dll derleme kullanarak tür kitaplığı bilgileri oluşturmaya çalıştığınızda çeşitli sorunlarla karşılaşabilirsiniz

Belirtiler

Tür kitaplığı bilgileri Microsoft Visual Studio 2008'de Microsoft.VisualStudio.Shell.Interop.dll derleme kullanarak oluşturmaya çalıştığınızda, aşağıdaki belirtilerden biriyle karşılaşabilirsiniz.

Belirti 1

Üretmek için ve bir tür kitaplığı kaydı Regasm.exe yardımcı programını kullandığınızda, aşağıdaki hata iletisini alabilirsiniz:

RegAsm: hata RA000: tür kitaplığı verme programı, "Microsoft.VisualStudio.Shell.Interop.SVsSolutionObject Microsoft.VisualStudio.Shell.Interop" işlerken bir hatayla karşılaştı. Hata: 'SVsSolutionObject' ve 'SVsSolution' yazın her ikisi de aynı UUID DEĞERİNE sahip.

Belirti 2

Tür kitaplığı oluşturmak için TlbExp.exe yardımcı programını kullandığınızda, aşağıdaki hata iletisini alabilirsiniz:

TlbExp: hata TX0000: tür kitaplığı verme programı, 'Microsoft.VisualStudio.Shell.Interop.SVsSolutionObject, Microsoft.VisualStudio.Shell.Interop' işlerken bir hatayla karşılaştı. Hata: 'SVsSolutionObject' ve 'SVsSolution' yazın her ikisi de aynı UUID DEĞERİNE sahip.


Belirti 3

Visual Studio 2008 paketini EnvDTE.DTE.Properties özelliği tarafından sunulan bir özellik koleksiyonu uygular. Koleksiyon Microsoft.VisualStudio.Shell.Interop.dll derlemesinden bir türü kullanan bir nesneyi bir üyesi ise, ortak dil çalışma zamanı (CLR) derleme için gerekli bellek içi tür kitaplığı oluşturmayacak. Örneğin, EnvDTE.DTE.Properties özelliğine başvuran aşağıdaki Visual Studio makrosu başarısız olur ve ardından, bir hata iletisi alırsınız.

Dim proj As Project = DTE.Solution.Projects.Item(1)   Dim props As Properties = proj.ConfigurationManager.ActiveConfiguration.Properties

Neden

ImportedFromTypelib özniteliği Visual Studio 2008'de Microsoft.VisualStudio.Shell.Interop.dll derlemesinden kaldırıldığı için bu sorun oluşur. Bu derlemeyle ilişkili tür kitaplığı olmadığı için ImportedFromTypelib özniteliği kaldırılıyor. Bu nedenle, CLR türüyle kitaplığı bulmaya çalıştığında ImportedFromTypelib özniteliği hatalarına neden olur.


Visual Studio 2008'de ImportedFromTypelib özniteliğinin kaldırıldığından, CLR Microsoft.VisualStudio.Shell.Interop.dll derleme için gerekli bellek içi tür kitaplığı oluşturamaz. Bu hata, yinelenen türü GUID neden olur.

Çözüm

Düzeltme bilgileri



Microsoft, desteklenen bir düzeltmeyi kullanıma sunmuştur. Ancak bu düzeltme yalnızca bu makalede anlatılan sorunu düzeltmek amacıyla hazırlanmıştır. Bu düzeltmeyi yalnızca bu sorunla karşılaşmış olan sistemlere uygulayın. Bu düzeltme, ek test süreci gerektirebilir. Bu nedenle bu sorundan ciddi bir şekilde etkilenmiyorsanız, bu düzeltmeyi içeren bir sonraki yazılım güncelleştirmesini beklemeniz önerilir.

Bu düzeltmeyi MSDN kod Galerisi'nden yüklemek için aşağıdaki Microsoft Web sitesini ziyaret edin:

http://code.msdn.microsoft.com/KB946308
Not: MSDN Kod Galerisi'nde düzeltmenin kullanılabilir olduğu diller görüntülenir. Kendi dilinizi görmüyorsanız, bu dil için kod Galerisi kaynak sayfası kullanılamıyor demektir.


Not: Ek sorunlar oluşursa veya sorun giderme gerekiyorsa, ayrı bir hizmet isteği oluşturmanız gerekebilir. Ek destek sorularına ve bu düzeltme için geçerli olmayan sorunlara normal destek ücretleri uygulanır. Microsoft Müşteri Hizmetleri ve Destek bölümünün tam liste telefon numaralarına ulaşmak veya ayrı bir hizmet isteği oluşturmak için aşağıdaki Microsoft Web sitesini ziyaret edin:

http://support.microsoft.com/contactus/?ws=support

Önkoşullar

Visual Studio 2008 bu düzeltmeyi uygulamak için yüklü olması gerekir.

Yeniden başlatma gereksinimi

Bu düzeltmeyi uyguladıktan sonra bilgisayarı yeniden başlatmanız gerekmez.

Düzeltme değiştirme bilgileri

Bu düzeltme önceden yayımlanmış bir düzeltmenin yerini almaz.

Dosya bilgileri

Bu düzeltmenin İngilizce sürümü, aşağıdaki tabloda listelenen dosya özniteliklerine (veya daha yeni dosya özniteliklerine) sahiptir. Bu dosyaların tarihleri ve saatleri Koordinatlı Evrensel Saat'te (UTC) listelenmiştir. Dosya bilgilerini görüntülediğinizde koordinatlı evrensel saat yerel saate dönüştürülür. UTC ve yerel saat arasındaki farkı bulmak için Denetim Masası'ndaki Tarih ve Saat öğesinde Saat Dilimi sekmesini kullanın.

Dosya adı

Dosya sürümü

Dosya boyutu

Tarih

Saat

Platform

Microsoft.VisualStudio.Shell.Interop.dll

7.10.6071.0

259152

07-Jan-2008

15:37

x86

Durum

Microsoft bu sorunun "Aşağıdakilere Uygulanır" bölümünde listelenen Microsoft ürünlerinde bulunduğunu onaylamıştır.

Daha fazla bilgi

Bu düzeltme, tür kitaplığı Oluşturucusu yinelenen GUID'ler dikkate almaz böylece ComVisible özelliğinin değeri false olarak ayarlayarak yinelenen GUID'ler işaretler.

Yazılım güncelleştirme terminolojisi hakkında daha fazla bilgi için Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasına tıklayın:

824684 Microsoft yazılım güncelleştirmelerini açıklamak için kullanılan standart terminolojinin açıklaması

Daha fazla yardıma mı ihtiyacınız var?

Yeteneklerinizi geliştirin
Eğitimleri keşfedin
Yeni özellikleri ilk olarak siz edinin
Microsoft Insider 'a katılın

Bu bilgi yardımcı oldu mu?

Geri bildiriminiz için teşekkür ederiz!

Geri bildiriminiz için teşekkürler! Office destek temsilcilerimizden biriyle görüşmeniz yararlı olabilir.

×