Určité konstrukce jazyka IDL jsou vzdáleným voláním procedur nesprávně zařazovány a vyřazovány (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)

Překlady článku Překlady článku
ID článku: 824835 - 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.
Důležité: Tento článek obsahuje informace o úpravě registru. Před úpravami je nutné registr zazálohovat. Seznamte se také s postupem obnovení registru v případě, že nastane problém. Další informace o zálohování, obnovení a úpravě registru naleznete v následujícím článku znalostní báze Microsoft Knowledge Base:
256986Popis registru systému Microsoft Windows
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Příznaky

Programy používat vzdálené volání procedur (RPC) komunikovat s jinými Microsoft počítačů v síti se pravděpodobně nezdaří. Například při použití vlastního programu Microsoft Visual Basic mezi dvěma vzdálených počítačů a jazyka program používá uživatelem definované typu zařazování, může hledání konstrukce určitých IDL (rozhraní Definition Language) jsou nesprávně zařadit a zrušeno. Může se například vyskytnout některý z následujících příznaků:
  • Vzdálené volání selže a kód chyby RPC_X_BAD_STUB_DATA vrácené program jazyka.
  • Nesprávná data je zrušeno.

Příčina

Tento problém může dojít, pokud součást RPC nesprávně marshals nebo některé konstrukce IDL unmarshals. Verze, které může nesprávně zařazování a vyřazení konstrukce IDL patří následující:
  • Microsoft Windows XP (původní verze) a Windows XP aktualizace Service Pack 1 (SP1) instalace, které zahrnují zabezpečení MS03-039. Tato aktualizace je popsána v následujícím článku znalostní báze Microsoft Knowledge Base:
    824146MS03-039: Přetečení vyrovnávací paměti ve službě RPCSS umožňuje útočníkovi spustit nebezpečné programy
  • Microsoft Windows 2000
  • Microsoft Windows NT 4.0
  • Microsoft Windows 98
Tento problém může dojít v programu jazyka, pokud platí obě následující podmínky:
  • Soubor IDL používá strukturu, která obsahuje pole 8 bajtů, který používá některý z následujících typů:
    Datum
    Dvojité
    CY
    VARIANTY
    Desítková
    INT64/UINT64
  • Je pole 8 bajtů – první pole a je pole je 4 bajty nebo menší před pole 8 bajtů, které jsou obsaženy ve stejné struktuře.
Například tohoto problému může dojít, pokud soubor IDL používá struktura je podobná následující:
Public Type myType

member1 As Long

member2 As Double

End Type

Řešení

Informace o opravě hotfix pro systém Windows Server 2003

Komunikovat s verzemi, které nesprávně zařazování a vyřazení konstrukce IDL, postupujte takto:
  1. Proveďte jednu z následujících akcí:
    • Nainstalovat nejnovější aktualizaci service pack pro Windows Server 2003 . Další informace naleznete následujícím článku znalostní databáze Microsoft Knowledge Base:
      889100Jak získat nejnovější aktualizaci Service Pack pro systém Windows Server 2003
    • Jsem nstalovat aktualizace zabezpečení popsané v bulletinu zabezpečení MS05-051 .Další informace o bulletinu zabezpečení MS05-051 klepnutím na následující číslo článku databáze Microsoft Knowledge Base:
      902400MS05-051: Chyby zabezpečení služby MS DTC a COM + mohou umožnit vzdálené spuštění kódu
  2. Přidat položku registru UDTAlignmentPolicy. Postupujte takto:

    Upozornění Při nesprávných úpravách registru pomocí Editoru registru nebo jiným způsobem může dojít k vážným problémům. Tyto problémy mohou vyžadovat přeinstalaci operačního systému. Společnost Microsoft nezaručuje, že tyto problémy bude možné vyřešit. Úpravy registru provádíte na vlastní nebezpečí.
    1. Klepněte na tlačítko Start, klepněte na příkaz Spustit, do pole Otevřít, zadejte příkaz regedit a klepněte na tlačítko OK.
    2. Vyhledejte následující podklíč registru:
      HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc
    3. V nabídce Úpravy přejděte na příkaz Nový a klepněte na příkaz Hodnota DWORD.
    4. Zadejte UDTAlignmentPolicy a stiskněte klávesu ENTER.
    5. Poklepejte na UDTAlignmentPolicy a zadejte hodnotu určit formát dat, který bude používat RPC na základě následující informace:

      Pokud je nastavena hodnota UDTAlignmentPolicy 0, bude pomocí formátu "staré" nesprávná data zařazování RPC. Verze systému Windows nesprávně zařazování a vyřazení konstrukce IDL bude komunikovat RPC. Například RPC bude komunikovat se systémem Windows 2000 nebo aktualizace Windows XP SP1 instalace, které zahrnují MS03-039.

      Pokud UDTAlignmentPolicy hodnota nastavena na 0, RPC může komunikovat s počítači se systémem Windows 2000.

      Pokud je nastavena hodnota UDTAlignmentPolicy 1, bude pomocí "nové" správné telegrafickém formátu zařazování RPC. Verze systému Windows správně zařazování a vyřazení konstrukce IDL bude komunikovat RPC. Například RPC bude komunikovat se systémem Windows Server 2003 nebo aktualizace instalací systému Windows XP zahrnují MS03-026.

      Pokud položka UDTAlignmentPolicy neexistuje vzdáleného volání se nezdaří a vrátí kód chyby RPC_X_BAD_STUB_DATA RPC při RPC pokusí pro zařazení nebo vyřazení ovlivněny typy.

      Důležité: Při UDTAlignmentPolicy hodnota nastavena na 0, počítač se systémem Windows Server 2003 mohou vyměňovat data konstrukce IDL s verzemi, které nesprávně zařazování a vyřazení konstrukce IDL. Konstrukce IDL je však zrušeno nesprávný formát. Kdy programy komunikovat s počítači, které verze systému Windows, které správně spustit zařazování a vyřazení konstrukce IDL pomocí nesprávný kód zařazovacího a unmarshaling může zabránit spolupráce tohoto stejné konstrukce IDL a jiných IDL konstrukce.

Informace o aktualizaci Service Pack pro systém Windows XP

Problém vyřešíte instalací nejnovější aktualizace Service Pack pro systém Windows XP. Další informace naleznete následujícím článku znalostní databáze Microsoft Knowledge Base:
322389získání nejnovější aktualizace Service Pack pro systém Windows XP
Windows XP Service Pack 2 můžete upravit položku registru UDTAlignmentPolicy upravit způsob RPC komunikuje s různé verze systému Windows. Postupujte části Krok 3 "hotfix informace pro Windows Server 2003".

Informace o opravě hotfix pro systém Windows XP

Komunikovat s verzemi, které nesprávně zařazování a vyřazení konstrukce IDL například aktualizaci Windows 2000 nebo Windows XP SP1 instalace, které zahrnují MS03-039, nainstalujte aktualizaci MS03-039 do počítačů se systémem Windows XP SP1. Další informace o MS03-039 aktualizace, klepněte na následující číslo článku databáze Microsoft Knowledge Base:
824146MS03-039: Přetečení vyrovnávací paměti ve službě RPCSS umožňuje útočníkovi spustit nebezpečné programy
Podporovaná oprava hotfix není aktuálně k dispozici pro počítače se systémem Windows XP komunikovat pomocí RPC s verzemi, které správně zařazování a vyřazení konstrukce IDL. Tyto verze jsou Windows Server 2003 a aktualizace instalací systému Windows XP zahrnují MS03-026.

Prohlášení

Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti, které jsou uvedeny v části Informace v tomto článku jsou určeny pro produkt. Tento problém byl poprvé opraven aktualizací Microsoft Windows XP Service Pack 2.

Další informace

Verze systému Windows správně zařazování a vyřazení konstrukce IDL uvedených v části "Příčina" patří následující:
  • Microsoft Windows Server 2003 a novější verze
  • Aktualizaci Windows XP Service Pack 1 (SP1) instalace, které zahrnují MS03-026, ale nezahrnujte aktualizaci zabezpečení MS03-039. Aktualizace MS03-026 je popsána v následujícím článku znalostní báze Microsoft Knowledge Base:
    823980MS03-026: V rozhraní RPC přetečení vyrovnávací paměti může umožnit spuštění kódu
  • Microsoft Windows XP Service Pack 2 (SP2),
Poznámka: Podporovaná oprava hotfix není aktuálně k dispozici pro počítače se systémem Windows 2000 komunikovat pomocí RPC s verzemi, které správně zařazování a vyřazení konstrukce IDL. Tyto verze jsou Windows Server 2003 a aktualizace instalací systému Windows XP zahrnují MS03-026.

Vlastnosti

ID článku: 824835 - Poslední aktualizace: 28. února 2014 - Revize: 13.6
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
  • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003, Web Edition
  • Microsoft Windows XP Professional 64-Bit Edition (Itanium) 2003
  • Microsoft Windows XP Professional 64-Bit Edition (Itanium)
  • Microsoft Windows XP Professional
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Tablet PC Edition
  • Microsoft Windows XP Media Center Edition 2005 Update Rollup 2
Klíčová slova: 
kbnosurvey kbarchive kbmt kbhotfixserver kbqfe kbtshoot kbwinxpsp2fix kbwinxppresp2fix kbfix kbbug KB824835 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:824835

Dejte nám zpětnou vazbu

 

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