Işlem sınırları boyunca bir Otomasyon sunucusu bir işaretçi resmin nesnenin ıpicturedisp uygulamasına geçirilemez

Makale çevirileri Makale çevirileri
Makale numarası: 150034 - 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

Işaretçi, işlem sınırları boyunca resim nesnenin ıpicturedisp uygulamasına geçirmek çalıştığında MFC CPictureHolder sınıfında tarafından alınmış bir resim nesnesi uygulayan bir Otomasyon sunucusu başarısız olur.

Neden

Ipicturedisp resim nesnesinin işlem sınırları boyunca sıralanamaz yöntemlere erişim kazanır. Örneğin, ıpicturedisp, resmin <a1>Teslim</a1> yöntemine erişim kazanmak için DISPID_PICT_RENDER destekler nesne. Teslim yöntemi bir tanıtıcı, bir aygıt içeriğe ilk parametresi olarak alır. Aygıt içerik tanıtıcıları sıralanamaz.

Yükleme arabirimleri normal olarak kod dizme ıdispatch kullanarak sıraya, ancak Resim nesnesi, özellikle kendi başarısız dizme neden IMarshal uygular.

Durum

Bu davranış tasarım yüzündendir.

Daha fazla bilgi

Visual C++, ClassWizard LPPICTUREDISP bir yöntemin dönüş türü seçmenizi sağlar. Bu yöntem, ıpicturedisp döndürebilir arabirimi CPictureHolder::GetPictureDispatch ça??rarak elde. Ancak, bu yöntem, başka bir işlemde çalışan bir denetleyici tarafından çağrılırsa, yöntem başarısız olur ve E_FAIL hata kodu döndürür.

Resim nesnesi hata vermesine ıpicturedisp sıralama nedeniyle, birden çok iş apartment model nesnesindeki iş parçacığı sınırları boyunca arabirim ıpicturedisp alınmaya çalışılırken, sorunları da oluşabilir.

Referanslar

Düzenleme ile ilgili daha fazla bilgi için lütfen "İç OLE," ikinci sürüm (Kraig Brockschmidt, Bölüm 6, "Yerel/uzak saydamlık," Microsoft Press tarafından yayımlanan bakın.

Özellikler

Makale numarası: 150034 - Last Review: 27 Şubat 2014 Perşembe - Gözden geçirme: 3.1
Bu makaledeki bilginin uygulandığı durum:
  • Microsoft Foundation Class Library 4.2, Ne zaman ne ile kullanilir:
    • Microsoft Visual C++ 4.0 Standard Edition
    • Microsoft Visual C++ 4.1 Aboneliği
    • Microsoft Visual C++ 4.2 Enterprise Edition
    • Microsoft Visual C++ 4.2 Professional Edition
    • Microsoft Visual C++ 5.0 Enterprise Edition
    • Microsoft Visual C++ 5.0 Professional Edition
    • Microsoft Visual C++ 6.0 Enterprise Edition
    • Microsoft Visual C++ 6.0 Professional Edition
    • Microsoft Visual C++, 32-bit Learning Edition 6.0
    • Microsoft OLE Control Developer's Kit (CDK)
Anahtar Kelimeler: 
kbnosurvey kbarchive kbmt kbtshoot kbautomation kbbitmap kbctrl kbprb KB150034 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:150034

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