Düzeltme: Windows yan yana yürütme için Visual Basic 6.0 ActiveX denetimleri desteklenmiyor.

Makale çevirileri Makale çevirileri
Makale numarası: 828629 - Bu makalenin geçerli olduğu ürünleri görün.
Hepsini aç | Hepsini kapa

Belirtiler

Microsoft Windows XP ve sonraki sürümleri, Microsoft Bileşen Nesne Modeli (COM) DLL modülleri-yan yana (SxS) modunda çalışır. SxS ile çakışma olmadan aynı bilgisayarı ortamında birlikte bulunmasını COM DLL farklı sürümleri. Bu davranış, bir program için belirli bir COM DLL nasıl bağlama belirttiğiniz .manifest dosyaları kullanarak oluşur. Aslında COM DLL modülleri .ocx dosyası adı uzantıları olan Microsoft Visual Basic 6.0 ActiveX denetimleridir. Windows XP'de bu modüller SxS işlem için yapılandırma çalışırsanız, aşağıdaki hata iletisini alırsınız:

Çalışma zamanı hatası '336' bileşen doğru olarak kaydedilir.

Neden

Bu sorun Windows ve Visual Basic çalıştırmalar Visual Basic 6.0 ActiveX denetimlerinin yapılandırılırken SxS yürütme desteği nedeniyle oluşur.

Çözüm

Tam olarak bu sorunu gidermek için aşağıdakilerin her ikisi de olması gerekir:
  • Visual Basic 6 Service Pack 6 (SP6) içerdiği Visual Basic çalışma zamanı sürümü
  • Windows XP Service Pack 2 (SP2)
En son Visual Basic çalışma zamanında elde etme hakkında ek bilgi için Microsoft Knowledge Base'deki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
290887Visual Basic 6.0 SP5 çalışma zamanı dosyaları VBRun60sp5.exe ile yüklenir
Windows XP SP2'yi edinmek için <a0></a0>, aşağıdaki Microsoft Knowledge Base Web sitesini ziyaret edin:
http://support.microsoft.com/default.aspx?scid=fh;EN-US;windowsxpsp2
Windows XP SP2'yi yeniden yükleyemezseniz, Windows XP düzeltme bir düzeltme olarak elde edebilirsiniz. Ek bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
843524Düzeltme: Visual Basic 6.0 ActiveX denetimlerinin yan tarafında COM DLL modülünü listesi Windows XP'deki kayıt tarafından geçersiz kılınır

Daha fazla bilgi

Bu düzeltmeyi etkinleştirmek için <a0></a0>, .manifest dosyaları için alanlar eklemeniz gerekir. The following is a sample .manifest file:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
	<assemblyIdentity type="win32" name="control.ocx" version="1.0.0.0" processorArchitecture="x86"/>
	<file name="control.ocx">
		<comClass description="Sub control" clsid="{76548630-0CC8-48E4-B471-A9001865AE65}" 
			miscStatus="recomposeonresize,cantlinkinside,insideout,activatewhenvisible,setclientsitefirst"
			progid="Control.TextBox" threadingModel="Apartment"
			tlbid="{8A1ADF05-8164-4D5B-9267-FA74E601D826}"/>
		<typelib tlbid="{8A1ADF05-8164-4D5B-9267-FA74E601D826}" version="1.0" helpdir=""/>
	</file>
</assembly>
MiscStatus öznitelik eklendi dikkat edin. Şimdi beş yeni öznitelikler derleme öğesi veya comClass öğesi, kullanılabilen çeşitli DVASPECT göstermek için kullanılabilir:
Bu tabloyu kapaBu tabloyu aç
ÖznitelikNOT
miscStatusElde edilen OleRegGetMiscStatus APı'SINE dwAspect bağımsız değişkeni için 0 geçirdiğinizde, varsayılan durum bayrakları
miscStatusIconDVASPECT_ICON eşlenir.
miscStatusThumbnailDVASPECT_THUMBNAIL eşlenir.
miscStatusDocPrintDVASPECT_CONTENT eşlenir.
miscStatusContentDVASPECT_CONTENT eşlenir.
Her boyut için aşağıdaki bayrakları kümesini, virgülle ayrılmış liste olarak belirtilebilir. BOŞLUK karakterleri kullanmayın ("") ancak bayrakların karışık durumda olabilir. Bu öğeleri OLEMISC bayrağı numaralandırma ' alınır.
Bu tabloyu kapaBu tabloyu aç
Recomposeonresize Onlyiconic Insertnotreplace
StatikCantlinkinsideCanlinkbyole1
IslinkobjectInsideoutActivatewhenvisible
RenderingisdeviceindependentInvisibleatruntimeAlwaysrun
ActslikebuttonActslikelabelNouiactivate
AlignableSimpleframeSetclientsitefirst
ImemodeIgnoreactivatewhenvisibleWantstomenumerge
Supportsmultilevelundo
Doğru çözümlemeye çal??ma zaman? için gelir tlbid özniteliği derlemesi öğesinde veya comClass öğesinde hangi tür kitaplığı belirtmek için COM sınıfı de gerekir, dikkat edin.

Durum

Microsoft, "Geçerli Olduğu Ürünler" bölümünde listelenen Microsoft ürünlerinde bu sorunun olduğunu onaylamıştır.

Özellikler

Makale numarası: 828629 - Last Review: 25 Ekim 2005 Salı - Gözden geçirme: 1.1
Bu makaledeki bilginin uygulandığı durum:
  • Microsoft Visual Basic 6.0 Enterprise Edition Service Pack 5
  • Microsoft Visual Basic 6.0 Learning Edition
  • Microsoft Visual Basic Professional Edition for Windows 6.0 SP5
  • Microsoft Windows XP Professional SP1
  • Microsoft Windows XP Professional SP1a
Anahtar Kelimeler: 
kbmt kbhotfixserver kbqfe kbwinxppresp2fix kbfix kbbug KB828629 KbMttr
Machine-translated Article
ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir:828629

Geri Bildirim Ver

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com