Oprava: Nesprávné metody se nazývají při volání některých rozhraní COM API, které jsou součástí rozhraní.NET Framework 2.0 aplikace založené na 64-bit

Příznaky

Jde o takovouto situaci:
  • 64bitová aplikace, který je vytvořen pomocí Microsoft rozhraní.NET Framework 2.0 volání některých rozhraní COM API.
  • Rozhraní COM API mít více instancí stejné metody.
  • Metoda používá atribut lcid .
  • Volání rozhraní API COM použijte jednu z následujících:
    • Spravované volání interop modelu COM.
    • Kód Platform Invoke (P/Invoke)
V tomto scénáři nesprávné metody jsou volány.

Například zvažte následující scénář:
  • Máte 64bitové aplikace, která používá 64bitovou verzi common language runtime (CLR).
  • Aplikace má dvě spravované funkce P/Invoke, které mají stejný podpis. Podpis se odkazuje na jediné nativní metody.
  • Funkce dvě P/Invoke spoléhají na třídě Atribut LCIDConversionAttribute podporu lokalizace.
  • Spuštění aplikace.
V tomto scénáři může zobrazit chybová zpráva podobná následující:
System.Runtime.InteropServices.COMException (0x800706F4): Do testovací kód byl předán nulový ukazatel. (Výjimky z HRESULT: 0x800706F4)

Řešení

Informace o opravě hotfix

Podporovaná oprava hotfix je nyní k dispozici od společnosti Microsoft. Je však určena opravit pouze problém popsaný v tomto článku. Použijte ji pouze u systémů, ve kterých dochází k tomuto konkrétnímu problému. Tato oprava hotfix může být dále testována. Proto pokud jste závažně tento problém, doporučujeme počkat další Windows Vista nebo rozhraní.NET Framework 2.0 service pack, která obsahuje tuto opravu hotfix.

Chcete-li tento problém vyřešit okamžitě, obraťte se na technickou podporu společnosti Microsoft získat opravu hotfix. Úplný seznam telefonních čísel služeb podpory zákazníků společnosti Microsoft a informace o cenách podpory naleznete na následujícím webu společnosti Microsoft:Poznámka: Ve zvláštních případech mohou být stornovány poplatky, které jsou třeba obvykle zaplatit za telefonní hovory, pokud pracovník služeb podpory společnosti Microsoft určí, že konkrétní aktualizace odstraní váš problém. Výdaje na technickou podporu použije dalších otázek a problémů, které nelze vyřešit konkrétní aktualizací.

Předpoklady

Musíte mít nainstalován do použití této opravy hotfix následující:
  • Windows Vista Service Pack 1
  • Rozhraní.NET Framework 2.0 Service Pack 1

Požadavek na restartování

Po instalaci této opravy hotfix nemusíte restartovat počítač.

Informace o nahrazení opravy hotfix

Tato oprava hotfix nenahrazuje žádné další opravy hotfix.

Informace o souborech

Anglická verze této opravy hotfix má atributy (nebo pozdější atributy souborů) uvedené v následující tabulce. Kalendářní data a časy jednotlivých souborů jsou uvedeny v koordinovaném světovém čase (UTC). Při zobrazení informací o souboru je převeden na místní čas. Rozdíl mezi místním časem a časem UTC naleznete na kartě Časové pásmo v položce Datum a čas v okně Ovládací panely.
Rozhraní.NET Framework 2.0, 32bitová verze v počítači, který není systémem Windows Vista
Název souboruVerze souboruVelikost souboruDatumČasPlatforma
Cordacwks.dll2.0.50727.1812822,28029-Jan-200810:48x86
Mscorlib.dll2.0.50727.18124,345,85629-Jan-200810:48x86
Mscorwks.dll2.0.50727.18125,852,67229-Jan-200810:48x86
Rozhraní.NET Framework 2.0, verze s procesorem Itanium, počítače, který není systémem Windows Vista
Název souboruVerze souboruVelikost souboruDatumČasPlatforma
Cordacwks.dll2.0.50727.1812822,28029-Jan-200810:48x86
Cordacwks.dll2.0.50727.18122,769,41629-Jan-200802:26IA-64
Mscorlib.dll2.0.50727.18124,345,85629-Jan-200810:48x86
Mscorlib.dll2.0.50727.18123,997,69629-Jan-200802:26IA-64
Mscorwks.dll2.0.50727.18125,852,67229-Jan-200810:48x86
Mscorwks.dll2.0.50727.181221,686,27229-Jan-200802:26IA-64
Rozhraní.NET Framework 2.0, verze 64-bit v počítači, který není systémem Windows Vista
Název souboruVerze souboruVelikost souboruDatumČasPlatforma
Cordacwks.dll2.0.50727.18101,652,74414-Jan-200823:36x64
Cordacwks.dll2.0.50727.1812822,28029-Jan-200810:48x86
Mscorlib.dll2.0.50727.18104,345,85614-Jan-200823:36x64
Mscorlib.dll2.0.50727.18124,345,85629-Jan-200810:48x86
Mscorwks.dll2.0.50727.181010,547,20014-Jan-200823:36x64
Mscorwks.dll2.0.50727.18125,852,67229-Jan-200810:48x86
Rozhraní.NET Framework 2.0 v počítači je spuštěna 32bitová verze systému Windows Vista s aktualizací Service Pack 1
Název souboruVerze souboruVelikost souboruDatumČasPlatforma
Mscorlib.dll2.0.50727.18264,345,85606-May-200822:18x86
Mscordacwks.dll2.0.50727.1826822,28006-May-200822:18x86
Mscorwks.dll2.0.50727.18265,852,67201-May-200823:34x86
Rozhraní.NET Framework 2.0 v počítači se systémem 64bitové verze systému Windows Vista s aktualizací Service Pack 1
Název souboruVerze souboruVelikost souboruDatumČasPlatforma
Mscorlib.dll2.0.50727.18264,345,85605-May-200822:13x64
Mscordacwks.dll2.0.50727.18261,652,74405-May-200822:13x64
Mscorwks.dll2.0.50727.182610,543,10401-May-200823:36x64
Mscorlib.dll2.0.50727.18264,345,85606-May-200822:18x86
Mscordacwks.dll2.0.50727.1826822,28006-May-200822:18x86
Mscorwks.dll2.0.50727.18265,852,67201-May-200823:34x86

Stav

Společnost Microsoft potvrdila, že se jedná o problém v produktech společnosti Microsoft, které jsou uvedeny v části "Platí pro".

Další informace

Další informace o P/Invoke naleznete následujícím webu Microsoft Developer Network (MSDN):Další informace týkající
LCID atributu naleznete na následujícím webu MSDN:Pro další informace o terminologii používané v aktualizacích softwaru, klepněte na následující číslo článku k zobrazení článku v databázi Microsoft Knowledge Base:
824684 Popis standardní terminologie používané při popisu aktualizací softwaru společnosti Microsoft
Vlastnosti

ID článku: 947148 - Poslední kontrola: 14. 1. 2017 - Revize: 1

Váš názor