Hatókör
.NET Framework 3.5 Service Pack 1

Jelenségek

Vegye figyelembe a következő forgatókönyvet:

  • Microsoft .NET Framework 3.5 Service Pack 1 (SP1) alapú Windows Presentation Foundation (WPF) alkalmazást futtat.

  • A WPF-alkalmazás a hardveres renderelési folyamatot használja.

  • Az alkalmazás számos olyan alkalmazástartományt tölt be és távolít el, amelyek egy vagy több egyéni WPF-bővítményösszetevőt tartalmaznak.

Ebben a forgatókönyvben az alkalmazás System.Runtime.InteropServices.COMException kivételt észlel, majd az alkalmazás összeomlik.

Megoldás

Gyorsjavítási információk

A Microsoft által támogatott gyorsjavítás érhető el. Ez a gyorsjavítás azonban csak az ebben a cikkben ismertetett probléma megoldására szolgál. Ezt a gyorsjavítást csak azokra a rendszerekre alkalmazza, amelyeknél ez a probléma jelentkezik. Ez a gyorsjavítás további tesztelést kaphat. Ezért ha a probléma nem érinti súlyosan, javasoljuk, hogy várja meg a következő szoftverfrissítést, amely tartalmazza ezt a gyorsjavítást. Ha le szeretné tölteni ezt a gyorsjavítást az MSDN Code Galleryből, látogasson el a Microsoft következő webhelyére:

http://code.msdn.microsoft.com/KB2276690Megjegyzés Az MSDN-kódtár megjeleníti azokat a nyelveket, amelyekhez a gyorsjavítás elérhető. Ha nem látja a nyelvet a listában, annak az az oka, hogy a Kódtár erőforráslapja nem érhető el az adott nyelvhez. Megjegyzés Ha további problémák merülnek fel, vagy hibaelhárításra van szükség, előfordulhat, hogy külön szolgáltatáskérést kell létrehoznia. A szokásos támogatási költségek azokra a további támogatási kérdésekre és problémákra vonatkoznak, amelyek nem jogosultak erre az adott gyorsjavításra. A Microsoft ügyfélszolgálati és támogatási telefonszámainak teljes listájáért vagy egy külön szolgáltatáskérés létrehozásához látogasson el a Microsoft következő webhelyére:

http://support.microsoft.com/contactus/?ws=support

Előfeltételek

A gyorsjavítás alkalmazásához telepítve kell lennie a .NET-keretrendszer 3.5 Service Pack 1 (SP1) verziójának. 

Újraindítás szükségessége

A gyorsjavítás alkalmazása után nem kell újraindítania a számítógépet.

A gyorsjavítások cseréjére vonatkozó információk

Ez a gyorsjavítás nem helyettesíti a többi gyorsjavítást.

Fájladatok

A gyorsjavítás angol nyelvű verziója tartalmazza az alábbi táblázatban felsorolt fájlattribútumokat (vagy újabb fájlattribútumokat). Ezeknek a fájloknak a dátumai és időpontjai az egyezményes világidő (UTC) szerint vannak felsorolva. A fájladatok megtekintésekor a rendszer helyi idővé alakítja azokat. Az UTC és a helyi idő különbségének megkereséséhez használja a Vezérlőpult Dátum és idő elemének Időzóna lapját.

A Windows Server 2003 és a Windows XP összes támogatott x86-alapú verziója esetén

Fájlnév

Fájlverzió

Méret

Dátum

Idő

Platform

Presentationcore.dll

3.0.6920.4033

4,218,880

2010. szeptember 02.

01:32

x86

Presentationframework.dll

3.0.6920.4033

5,279,744

2010. szeptember 02.

01:28

x86

Presentationhost.exe

4.0.40305.0

295,264

2010. szeptember 02.

01:28

x86

Presentationhostdll.dll

3.0.6920.4033

130,408

2010. szeptember 02.

01:32

x86

Presentationhostproxy.dll

4.0.31106.0

99,176

2010. szeptember 02.

01:32

x86

Windowsbase.dll

3.0.6920.4033

1,249,280

2010. szeptember 02.

01:32

x86

A Windows Server 2003 és a Windows XP összes támogatott x64-alapú verziója esetén

Fájlnév

Fájlverzió

Méret

Dátum

Idő

Platform

Presentationcore.dll

3.0.6920.4033

3,997,696

2010. szeptember 02.

00:53

x64

Presentationframework.dll

3.0.6920.4033

4,636,672

2010. szeptember 02.

00:48

x64

Presentationhost.exe

4.0.31106.0

320,352

2010. szeptember 02.

00:48

x64

Presentationhostdll.dll

3.0.6920.4033

171,368

2010. szeptember 02.

00:53

x64

Presentationhostproxy.dll

4.0.31106.0

109,928

2010. szeptember 02.

00:53

x64

Windowsbase.dll

3.0.6920.4033

1,110,016

2010. szeptember 02.

00:53

x64

A Windows Vista Service Pack 2 (SP2) és a Windows Server 2008 Service Pack 2 (SP2) összes támogatott x86-alapú verziója esetén

Fájlnév

Fájlverzió

Méret

Dátum

Idő

Platform

Presentationcore.dll

3.0.6920.4033

4,218,880

2010. szeptember 9.

10:52

x86

Presentationfontcache.exe.config

Not Applicable

161

2009.03.03.

21:25

Not Applicable

Wpfgfx_v0300.dll

3.0.6920.4003

1,736,024

2009. június 17.

08:03

x86

Presentationframework.dll

3.0.6920.4033

5,279,744

2010. szeptember 9.

10:52

x86

Presentationhostdll.dll

3.0.6920.4033

130,408

2010. szeptember 9.

10:52

x86

Windowsbase.dll

3.0.6920.4033

1,249,280

2010. szeptember 9.

10:52

x86

A Windows Vista SP2 és a Windows Server 2008 SP2 összes támogatott x64-alapú verziója esetén

Fájlnév

Fájlverzió

Méret

Dátum

Idő

Platform

Presentationcore.dll

3.0.6920.4033

3,997,696

2010. szeptember 9.

10:52

x64

Presentationfontcache.exe.config

Not Applicable

161

2009.03.03.

20:58

Not Applicable

Wpfgfx_v0300.dll

3.0.6920.4003

2,254,168

2009. június 17.

08:03

x64

Presentationframework.dll

3.0.6920.4033

4,636,672

2010. szeptember 9.

10:52

x64

Presentationhostdll.dll

3.0.6920.4033

171,368

2010. szeptember 9.

10:52

x64

Windowsbase.dll

3.0.6920.4033

1,110,016

2010. szeptember 9.

10:52

x64

A Windows 7 összes támogatott x86-alapú verziójához

Fájlnév

Fájlverzió

Méret

Dátum

Idő

Platform

Presentationcore.dll

3.0.6920.5012

4,218,880

2010. szeptember 11.

01:29

x86

Presentationfontcache.exe.config

Not Applicable

161

2009. június 10.

21:14

Not Applicable

Wpfgfx_v0300.dll

3.0.6920.4902

1,736,536

2009. június 10.

21:14

x86

Presentationframework.dll

3.0.6920.5012

5,279,744

2010. szeptember 11.

01:29

x86

Presentationhostdll.dll

3.0.6920.5012

130,408

2010. szeptember 11.

01:29

x86

Presentationhost.exe

4.0.31106.0

295,264

2010. szeptember 11.

01:29

x86

Presentationhostproxy.dll

4.0.31106.0

99,176

2010. szeptember 11.

01:29

x86

Windowsbase.dll

3.0.6920.5012

1,253,376

2010. szeptember 11.

01:29

x86

A Windows 7 és a Windows Server 2008 R2 összes támogatott x64-alapú verziója esetén

Fájlnév

Fájlverzió

Méret

Dátum

Idő

Platform

Presentationcore.dll

3.0.6920.5012

3,997,696

2010. szeptember 11.

01:28

x64

Presentationfontcache.exe.config

Not Applicable

161

2009. június 10.

20:30

Not Applicable

Wpfgfx_v0300.dll

3.0.6920.4902

2,255,176

2009. június 10.

20:30

x64

Presentationframework.dll

3.0.6920.5012

4,636,672

2010. szeptember 11.

01:28

x64

Presentationhostdll.dll

3.0.6920.5012

171,368

2010. szeptember 11.

01:28

x64

Presentationhost.exe

4.0.31106.0

320,352

2010. szeptember 11.

01:28

x64

Presentationhostproxy.dll

4.0.31106.0

109,928

2010. szeptember 11.

01:28

x64

Windowsbase.dll

3.0.6920.5012

1,114,112

2010. szeptember 11.

01:28

x64

Állapot

A Microsoft megerősítette, hogy ez a probléma „A következőkre vonatkozik:” részben felsorolt Microsoft-termékekre vonatkozik.

Kerülő megoldás

A probléma megkerüléséhez tiltsa le a hardveres renderelési folyamatot, majd engedélyezze a szoftveres megjelenítési folyamatot. A hardveres megjelenítési folyamat letiltásához és a szoftveres megjelenítési folyamat engedélyezéséhez használja az alábbi módszerek egyikét:

  • Állítsa be a System.Windows.Interop.RenderMode enumerálást.Az alábbi példakód beállítja a System.Windows.Interop.RenderMode enumerálást a szoftveres megjelenítési folyamat engedélyezéséhez WPF-ablak betöltésekor:

    private void OnLoaded(object sender, EventArgs e){System.Windows.Interop.HwndSource hwndSource = PresentationSource.FromVisual(this) as System.Windows.Interop.HwndSource;System.Windows.Interop.HwndTarget hwndTarget = hwndSource.CompositionTarget; hwndTarget.RenderMode = System.Windows.Interop.RenderMode.SoftwareOnly;}
  • Állítsa be a DisableHWAcceleration beállításkulcsot.Fontos: Ez a szakasz, metódus vagy feladat olyan lépéseket tartalmaz, amelyekből megtudhatja, hogyan módosíthatja a beállításjegyzéket. A beállításjegyzék helytelen módosítása azonban komoly problémákat okozhat, ezért ügyeljen az utasítások pontos betartására. A módosítás előtt készítsen biztonsági másolatot a beállításjegyzékről, hogy szükség esetén visszaállíthassa azt. A beállításjegyzék biztonsági mentéséről és visszaállításáról a Microsoft Tudásbázis következő cikkéből tájékozódhat:

    322756 A beállításjegyzék biztonsági mentése és visszaállítása a WindowsbanFigyelmeztetés Ez a módszer letiltja a hardveres renderelési folyamatot a számítógépen található összes WPF-alkalmazás esetében. Ezért a módszert általában nem javasoljuk, kivéve, ha az ügyfelek szabályozzák a környezeteket, és nem bánják, hogy az összes WPF-alkalmazásra hatással van.

    1. Kattintson a Start gombra, kattintson a Futtatás parancsra, írja be a regedit parancsot, majd nyomja le az ENTER billentyűt.

    2. Keresse meg a következő beállításkulcsot, és kattintson rá:

      HKEY_CURRENT_USER\SOFTWARE\Microsoft\Avalon.Graphics

    3. Állítsa a DisableHWAcceleration beállításjegyzékbeli bejegyzés értékét 1-re.Megjegyzés Ha a DisableHWAcceleration beállításjegyzékbeli bejegyzés nem létezik, kattintson a jobb gombbal a beállításjegyzék alkulcsára, mutasson az Új pontra, majd kattintson a Sztringérték elemre egy új beállításjegyzék-bejegyzés létrehozásához. Írja be a DisableHWAcceleration kifejezést az új beállításjegyzék-bejegyzés nevére, kattintson duplán a DisableHWAcceleration elemre, majd módosítsa a DisableHWAcceleration értékadatokat 1-es értékre.

    4. Zárja be a Beállításszerkesztőt.

További információ

A szoftver renderelési folyamatával kapcsolatos további információkért látogasson el a Microsoft Developer Network (MSDN) következő webhelyére:Általános információk a szoftver renderelési folyamatárólA WPF-renderelés beállításjegyzék-beállításaival kapcsolatos további információkért látogasson el az MSDN következő webhelyére:Általános információk a WPF-renderelés beállításjegyzék-beállításairólA System.Windows.Interop.RenderMode enumerálással kapcsolatos további információkért látogasson el a következő MSDN-webhelyre:Általános információk a "System.Windows.Interop.RenderMode" enumerálásról

További segítségre van szüksége?

További lehetőségeket szeretne?

Fedezze fel az előfizetés előnyeit, böngésszen az oktatóanyagok között, ismerje meg, hogyan teheti biztonságossá eszközét, és így tovább.