Düzeltme: ADO Recordset ByRef gönderme hata bilgileri sıfırlar

Makale çevirileri Makale çevirileri
Makale numarası: 264701 - Bu makalenin geçerli olduğu ürünleri görün.
Bu makale arşivlenmiştir. "Olduğu gibi" sunulmaktadır ve bundan sonra güncelleştirilmeyecektir.
Hepsini aç | Hepsini kapa

Belirtiler

Bir işlem dışı COM nesnesinin yöntemini ByRef parametresi kullanılarak bir ADO kayıt kümesini geçirmek ve işlem dışı COM nesnesi, bir hata üretir, bu hata bilgileri düzgün istemci uygulamasına bildirilebilir değil.

Neden

Bir ADO kayıt kümesi tarafından düzenlenen alınmış işlem dışı olduğunda, ByRef yöntem parametre kullanarak özel sıralama kodu hem istemci hem de sunucu yüzüne ADO tarafından uygulanan etkin ve bu kod bir COM nesnesi tarafından oluşturulan bekleyen OLE hata nesnesi sıfırlar.

Çözüm

Bu sorun en son hizmet paketleri Windows 2000 ve MDAC 2.5 düzeltildi.
  • Bu sorunu gidermek için, en son Windows 2000 hizmet paketini edinin. Ek bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
    260910En son Windows 2000 hizmet paketi nasıl elde edilir
  • Bu sorunu gidermek için <a0></a0>, Microsoft Data Access Components 2.5 için en son hizmet paketini edinin. Ek bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
    293312BILGI: son MDAC 2.5 nasıl elde edilir hizmet paketi
   Date        Time   Version      Size     File name     Platform
   ---------------------------------------------------------------
   06/09/2000  13:02  2.50.5408.0  327,952  Msadce.dll    x86 
   06/09/2000  12:46  2.50.5408.0  487,696  Msado15.dll   x86 
				

Pratik Çözüm

Bir geçici çözüm, ByVal parametre kullanarak bir ADO kayıt kümesindeki geçirin ve sonra da bir dönüş değeri'ni kullanarak bir ADO kayıt kümesi döndürmek sağlamaktır.

Durum

Microsoft, bu makalenin başında listelenen Microsoft ürünlerinde bir sorun olduğunu onaylamıştır. Bu sorun ilk olarak Microsoft Data Access Components 2.5 Service Pack 2 ve Windows 2000 Service Pack 2'de giderilmiştir.

Daha fazla bilgi

[Giriş, çıkış] bir parametre olarak COM nesnesinin tür kitaplığı tarafından tanımlanan bir COM yöntem parametre ByRef parametresi. Microsoft, bu yöntem her ikisi için Visual Basic (VB) bir COM nesnesi oluşturur ve önce bazı yöntem parametre ByRef anahtar sözcüğünü ekleyin, Visual Basic ayarlar kabul ve COM nesnesinin Tür kitaplığında [giriş, çıkış] emrini kullanarak bir nesne değişkeni dönün.

Aşağıdaki senaryolarda altında yeniden sorun:
  1. Her ikisini birden kabul ettiğini ByRef kullanılarak bir ADO kayıt kümesini BIR Visual Basic veya Visual C++ COM EXE sunucusu [giriş, çıkış] ve yöntem çağrısı bir hata yükseltir.
  2. Bir Visual Basic veya Visual C++ COM DLL MTS veya her ikisini birden kabul ettiğini bir ADO kayıt kümesini ByRef COM barındırılan [giriş, çıkış] ve yöntem çağrısı bir hata yükseltir.
Bu durumda, COM bileşeni tarafından geçirilen gerçek bir hata istemciye; bildirilen değil bunun yerine, hata "yöntem ' ~ 'nesnesinin' ~ ' başarısız oldu" bildirilir.

Istemci ve COM sunucusu iki bağımsız bilgisayarlardaki (örneğin, DCOM Uzaktan bir COM sunucusu kullanıldığında) olduğu durumlarda bu sorunu gidermek için istemci ve sunucu makineleri bu düzeltmeyi uygulamak gerekeceğini unutmayın.

Özellikler

Makale numarası: 264701 - Last Review: 24 Şubat 2014 Pazartesi - Gözden geçirme: 2.1
Bu makaledeki bilginin uygulandığı durum:
  • Microsoft Data Access Components 2.5
Anahtar Kelimeler: 
kbnosurvey kbarchive kbmt kbqfe kbhotfixserver kbbug kbfix kbmdac250sp2fix KB264701 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:264701

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