Oprava: ADO Recordset ztráta filtr vlastností při Marshalled-procedura

Překlady článku Překlady článku
ID článku: 264442 - Produkty, které se vztahují k tomuto článku.
Tento článek byl archivován. Je nabízen v takovém stavu, v jakém je, a nebude již nadále aktualizován.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Příznaky

Při předání odpojené ADO Recordset mezi dvěma objekty COM ve stejné aplikaci určité rozšířené vlastnosti Recordset, jako je například vlastnost Filtr budou ztraceny. Ve skupinovém rámečku podobné konfigurace v balíčku Microsoft Transaction Server (MTS) na Microsoft Windows NT 4.0 nebudou ztraceny rozšířené vlastnosti.

Příčina

COM + nyní provádí v procesu zařazovací při předávání mezi dvěma objekty COM ADO Recordset. Při provádění zařazovací v procesu, ADO vytváří ekvivalentní klonování Recordset, spíše než zařazovací existující ADO Recordset rozhraní ukazatel. To způsobí ztrátu rozšířené vlastnosti, jako je například vlastnost Filtr. Stejné ztrátu rozšířených vlastností dochází při vytvořit klon ADO Recordset nebo při předání odpojené ADO Recordset out-of-process, ale tyto konkrétní případy jsou záměrné.

Řešení

Tento problém je vyřešen v nejnovější aktualizace service Pack pro systém Windows 2000 a součásti MDAC 2.5.
  • Tento problém vyřešíte pomocí nejnovější aktualizace service pack pro systém Windows 2000. Další informace získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
    260910Jak získat nejnovější aktualizaci Service Pack pro systém Windows 2000
  • Tento problém vyřešíte pomocí nejnovější aktualizace service pack pro Microsoft Data Access Components 2.5. Další informace získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
    293312INFORMACE: Jak získat nejnovější MDAC 2.5 Service Pack
Anglická verze této opravy má následující nebo vyšší atributy souborů:
   Date         Time    Version       Size      File name    Platform
   ------------------------------------------------------------------
   05/23/2000   22:22   2.51.5629.0   327,952   Msadce.dll   x86 
   05/23/2000   22:19   2.51.5629.0   487,696   Msado15.dll  x86 
				

Prohlášení

Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti, které jsou uvedeny na začátku tohoto článku. Tento problém byl první opraven v Microsoft Data Access Components (MDAC) verze 2.5 Service Pack 2, MDAC verze 2.6 a Windows 2000 Service Pack 2.

Další informace

V COM + když je objekt například ADO Recordset předán mezi dvěma objekty COM v stejné aplikace COM +, objekt zařazenými v procesu je spíše než právě předán jako ukazatel rozhraní bez zařazovací. To nastane v COM +, i když objekty COM volající a volaný jsou ve stejném procesu, podprocesu a COM apartment. COM + pokusí o zařazení objektu mezi dvěma objekty COM, dotazy pro rozhraní IMarshal z předané objektu. Pokud objekt předané vrátí rozhraní IMarshal, COM + používá toto rozhraní k zařazování objekt v procesu voláním IMarshal::MarshalInterface použitím příznaku MSHCTX_INPROC.

Chcete před použitím této opravy hotfix odpojené ADO Recordset implementuje zařazovací vytvořením ekvivalentní klonování Recordset, který nebude kopírovat všechny Recordset rozšířené vlastnosti, jako například Filtr v procesu. Takže pokud předat ADO Recordset mezi dvěma objekty COM v COM + rozšířené vlastnosti, například Filtr budou ztracena.

Po instalaci opravy hotfix ADO provádí pomocí volné podprocesem zařazováním (FTM), který je ekvivalentní předávání ukazatele rozhraní původní objekt z volající volaný zařazovací v procesu. Použití FTM ADO můžete efektivně zařazování ADO Recordset uvnitř COM + a udržovat všechny rozšířené vlastnosti.

Všimněte si, že pokud předat připojené ADO Recordset, který má jeho nastavena vlastnost CursorLocationadUseServer tento Recordset není ztraceny rozšířené vlastnosti, pokud předán mezi dvěma objekty COM v aplikaci COM +.

Vlastnosti

ID článku: 264442 - Poslední aktualizace: 9. února 2014 - Revize: 2.0
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft ActiveX Data Objects 2.5
Klíčová slova: 
kbnosurvey kbarchive kbmt kbqfe kbhotfixserver kbado260fix kbbug kbfix kbmdac250sp2fix KB264442 KbMtcs
Strojově přeložený článek
Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.
Projděte si také anglickou verzi článku:264442

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