Applies To.NET Framework 3.5 Service Pack 1

Simptomi

Razmislite o sljedećem scenariju:

  • Pokrenite aplikaciju Windows Presentation Foundation (WPF) utemeljenu na paketu Microsoft .NET Framework 3.5 Service Pack 1 (SP1).

  • Aplikacija WPF koristi kanal za hardversko renderiranje.

  • Aplikacija učitava i iz memorije mnoge domene aplikacija koje sadrže jednu ili više prilagođenih komponenti WPF dodatka.

U tom scenariju aplikacija naiđe na iznimku System.Runtime.InteropServices.COMException, a zatim se aplikacija ruši.

Rješenje

Informacije o hitnim popravcima

Podržani hitni popravak dostupan je od Microsofta. No taj je hitni popravak namijenjen ispravljanja samo problema opisanog u ovom članku. Taj hitni popravak primijenite samo na sustave na koje se pojavljuje taj određeni problem. Taj hitni popravak može primiti dodatno testiranje. Stoga, ako taj problem ne utječe ozbiljno, preporučujemo da pričekate sljedeće ažuriranje softvera koje sadrži taj hitni popravak. Da biste preuzeli taj hitni popravak iz galerije MSDN koda, posjetite sljedeće Microsoftovo web-mjesto:

http://code.msdn.microsoft.com/KB2276690Napomena Galerija MSDN kodova prikazuje jezike za koje je hitni popravak dostupan. Ako ne vidite jezik na popisu, to je zato što stranica resursa galerije koda nije dostupna za taj jezik. Napomena Ako se pojave dodatni problemi ili ako je potrebno otklanjanje poteškoća, možda ćete morati stvoriti zaseban zahtjev za uslugu. Uobičajeni troškovi podrške primijenit će se na dodatna pitanja o podršci i probleme koji ne ispunjavaju uvjete za taj određeni hitni popravak. Potpuni popis telefonskih brojeva Microsoftove službe za korisnike i podrške ili za stvaranje zasebnog zahtjeva za uslugu potražite na sljedećem Microsoftovu web-mjestu:

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

Preduvjeti

Da biste primijenili taj hitni popravak, morate imati instaliran .NET Framework 3.5 Service Pack 1 (SP1). 

Potreba za ponovnim pokretanjem

Ne morate ponovno pokrenuti računalo nakon primjene tog hitnog popravka.

Informacije o zamjeni hitnih popravaka

Taj hitni popravak ne zamjenjuje druge hitne popravke.

Informacije o datoteci

Engleska verzija ovog hitnog popravka sadrži atribute datoteka (ili novije atribute datoteka) koji su navedeni u sljedećoj tablici. Datumi i vremena za te datoteke navedeni su u koordiniranom univerzalnom vremenu (UTC). Kada pregledavate informacije o datoteci, pretvaraju se u lokalno vrijeme. Da biste pronašli razliku između UTC-a i lokalnog vremena, koristite karticu Vremenska zona u stavci Datum i vrijeme na upravljačkoj ploči.

Za sve podržane verzije sustava Windows Server 2003 i Windows XP utemeljene na procesoru x86

Naziv datoteke

Verzija datoteke

Veličina datoteke

Datum

Vrijeme

Platforma

Presentationcore.dll

3.0.6920.4033

4,218,880

02. srpnja 2010.

01:32

x86

Presentationframework.dll

3.0.6920.4033

5,279,744

02. srpnja 2010.

01:28

x86

Presentationhost.exe

4.0.40305.0

295,264

02. srpnja 2010.

01:28

x86

Presentationhostdll.dll

3.0.6920.4033

130,408

02. srpnja 2010.

01:32

x86

Presentationhostproxy.dll

4.0.31106.0

99,176

02. srpnja 2010.

01:32

x86

Windowsbase.dll

3.0.6920.4033

1,249,280

02. srpnja 2010.

01:32

x86

Za sve podržane verzije sustava Windows Server 2003 i Windows XP utemeljene na procesoru x64

Naziv datoteke

Verzija datoteke

Veličina datoteke

Datum

Vrijeme

Platforma

Presentationcore.dll

3.0.6920.4033

3,997,696

02. srpnja 2010.

00:53

x64

Presentationframework.dll

3.0.6920.4033

4,636,672

02. srpnja 2010.

00:48

x64

Presentationhost.exe

4.0.31106.0

320,352

02. srpnja 2010.

00:48

x64

Presentationhostdll.dll

3.0.6920.4033

171,368

02. srpnja 2010.

00:53

x64

Presentationhostproxy.dll

4.0.31106.0

109,928

02. srpnja 2010.

00:53

x64

Windowsbase.dll

3.0.6920.4033

1,110,016

02. srpnja 2010.

00:53

x64

Za sve podržane verzije sustava Windows Vista Service Pack 2 (SP2) i Windows Server 2008 Service Pack 2 (SP2) utemeljene na procesoru x86

Naziv datoteke

Verzija datoteke

Veličina datoteke

Datum

Vrijeme

Platforma

Presentationcore.dll

3.0.6920.4033

4,218,880

09. – 2010.

10:52

x86

Presentationfontcache.exe.config

Not Applicable

161

03. travnja 2009.

21:25

Not Applicable

Wpfgfx_v0300.dll

3.0.6920.4003

1,736,024

17. lipnja 2009.

08:03

x86

Presentationframework.dll

3.0.6920.4033

5,279,744

09. – 2010.

10:52

x86

Presentationhostdll.dll

3.0.6920.4033

130,408

09. – 2010.

10:52

x86

Windowsbase.dll

3.0.6920.4033

1,249,280

09. – 2010.

10:52

x86

Za sve podržane verzije sustava Windows Vista SP2 i Windows Server 2008 SP2 utemeljene na procesoru x64

Naziv datoteke

Verzija datoteke

Veličina datoteke

Datum

Vrijeme

Platforma

Presentationcore.dll

3.0.6920.4033

3,997,696

09. – 2010.

10:52

x64

Presentationfontcache.exe.config

Not Applicable

161

03. travnja 2009.

20:58

Not Applicable

Wpfgfx_v0300.dll

3.0.6920.4003

2,254,168

17. lipnja 2009.

08:03

x64

Presentationframework.dll

3.0.6920.4033

4,636,672

09. – 2010.

10:52

x64

Presentationhostdll.dll

3.0.6920.4033

171,368

09. – 2010.

10:52

x64

Windowsbase.dll

3.0.6920.4033

1,110,016

09. – 2010.

10:52

x64

Za sve podržane verzije sustava Windows 7 utemeljene na procesoru x86

Naziv datoteke

Verzija datoteke

Veličina datoteke

Datum

Vrijeme

Platforma

Presentationcore.dll

3.0.6920.5012

4,218,880

11. srpnja 2010.

01:29

x86

Presentationfontcache.exe.config

Not Applicable

161

10. lipnja 2009.

21:14

Not Applicable

Wpfgfx_v0300.dll

3.0.6920.4902

1,736,536

10. lipnja 2009.

21:14

x86

Presentationframework.dll

3.0.6920.5012

5,279,744

11. srpnja 2010.

01:29

x86

Presentationhostdll.dll

3.0.6920.5012

130,408

11. srpnja 2010.

01:29

x86

Presentationhost.exe

4.0.31106.0

295,264

11. srpnja 2010.

01:29

x86

Presentationhostproxy.dll

4.0.31106.0

99,176

11. srpnja 2010.

01:29

x86

Windowsbase.dll

3.0.6920.5012

1,253,376

11. srpnja 2010.

01:29

x86

Za sve podržane verzije sustava Windows 7 i Windows Server 2008 R2 utemeljene na procesoru x64

Naziv datoteke

Verzija datoteke

Veličina datoteke

Datum

Vrijeme

Platforma

Presentationcore.dll

3.0.6920.5012

3,997,696

11. srpnja 2010.

01:28

x64

Presentationfontcache.exe.config

Not Applicable

161

10. lipnja 2009.

20:30

Not Applicable

Wpfgfx_v0300.dll

3.0.6920.4902

2,255,176

10. lipnja 2009.

20:30

x64

Presentationframework.dll

3.0.6920.5012

4,636,672

11. srpnja 2010.

01:28

x64

Presentationhostdll.dll

3.0.6920.5012

171,368

11. srpnja 2010.

01:28

x64

Presentationhost.exe

4.0.31106.0

320,352

11. srpnja 2010.

01:28

x64

Presentationhostproxy.dll

4.0.31106.0

109,928

11. srpnja 2010.

01:28

x64

Windowsbase.dll

3.0.6920.5012

1,114,112

11. srpnja 2010.

01:28

x64

Status

Microsoft je potvrdio da je to problem u Microsoftovim proizvodima koji su navedeni u odjeljku "Odnosi se na".

Zaobilazno rješenje

Da biste zaobišli taj problem, onemogućite kanal za renderiranje hardvera, a zatim omogućite kanal za renderiranje softvera. Da biste onemogućili kanal za hardversko renderiranje i omogućili kanal za renderiranje softvera, koristite jednu od sljedećih metoda:

  • Postavite enumeraciju System.Windows.Interop.RenderMode.Slijedi ogledni kod koji postavlja enumeraciju System.Windows.Interop.RenderMode da bi se omogućio kanal za renderiranje softvera prilikom učitavanja WPF prozora:

    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;}
  • Postavite ključ registra DisableHWAcceleration .Važno Ovaj odjeljak, metoda ili zadatak sadrži korake koji vas obavještavaju o tome kako izmijeniti registar. A nepravilnim izmjenama registra možete prouzročiti ozbiljne probleme. Zato pažljivo slijedite ove upute. Radi dodatne zaštite prije izmjene registra stvorite njegovu sigurnosnu kopiju. Na taj ćete način moći vratiti registar ako se pojave problemi. Dodatne informacije o stvaranju sigurnosne kopije i vraćanju registra potražite u članku iz Microsoftove baze znanja pod brojem

    322756 Kako sigurnosno kopirati i vratiti registar u sustavu WindowsUpozorenje Ta metoda onemogućuje kanal za renderiranje hardvera za sve WPF aplikacije na računalu. Stoga se metoda ne potiče obično, osim kada korisnici kontroliraju okruženja i ne smetaju učinak za sve WPF aplikacije.

    1. Kliknite Start, zatim Pokreni, upišite regedit, a zatim pritisnite ENTER.

    2. Pronađite i kliknite sljedeći potključ registra:

      HKEY_CURRENT_USER\SOFTWARE\Microsoft\Avalon.Graphics

    3. Postavite vrijednost stavke registra DisableHWAcceleration na 1.Napomena Ako unos registra DisableHWAcceleration ne postoji, desnom tipkom miša kliknite potključ registra, pokažite na Novo, a zatim kliknite Vrijednost niza da biste stvorili novi unos registra. Upišite DisableHWAcceleration za naziv nove stavke registra, dvokliknite DisableHWAcceleration, a zatim promijenite podatke vrijednosti DisableHWAcceleration u 1.

    4. Zatvorite Uređivač registra.

Dodatne informacije

Dodatne informacije o kanalu za renderiranje softvera potražite na sljedećem web-mjestu Microsoft Developer Network (MSDN) :Općenite informacije o kanalu za renderiranje softvera Dodatne informacije o postavkama registra WPF renderinga potražite na sljedećem web-mjestu MSDN-a:Općenite informacije o postavkama registra WPF renderingaDodatne informacije o enumeraciji System.Windows.Interop.RenderMode potražite na sljedećem web-mjestu MSDN-a:Općenite informacije o enumeraciji "System.Windows.Interop.RenderMode"

Potrebna vam je dodatna pomoć?

Želite dodatne mogućnosti?

Istražite pogodnosti pretplate, pregledajte tečajeve za obuku, saznajte kako zaštititi uređaj i još mnogo toga.