Resolvendo problemas da SiS Mirage 3 com o Visual Studio 2010 (e outras aplicações que usam WPF)

Um dos prêmios que ganhei com a vitória na fase nacional da Imagine Cup deste ano foi um notebook Elcoma Wizz, que apesar de ser uma boa máquina para o dia-a-dia (Core 2 Duo T6400, 320GB de HD e 4GB de RAM, mas Windows 7 de 32bits…), vem com o chipset de vídeo SiS Mirage 3.

Esse chipset é focado para máquinas de baixo custo, e é muito, MUITO fraco. Hoje, primeira vez que fui tentar trabalhar com a máquina nova no Visual Studio 2010, assim que ele abriu, as letras no código todas distorcidas, com quadradinhos coloridos, geralmente amarelos, no meio delas, parenteses que pareciam chaves, chaves que pareciam colchetes, todo tipo de problema de renderização que se possa imaginar. Flávio, que estava junto no momento, disse que a máquina dele, um Positivo que usa a mesma SiS Mirage 3, tem o mesmo problema com o Visual Studio 2010.

Um pouco de pesquisa e descobri que, mesmo com os drivers mais atualizados (o que era meu caso), essa “placa” não trabalha bem com WPF (lembrando que a interface do VS2010 utiliza WPF). A solução é desabilitar a aceleração de hardware… O problema é que, tanto no Windows 7 como no Vista, isso não é trivial.

UPDATE: O novo Windows Live Messenger 2011, popularmente conhecido no Brasil como MSN 11, também tem a interface baseada em WPF. A correção abaixo também irá corrigir os problemas de exibição deste programa.

O caminho é o seguinte:

  • Abra o registro do windows (Iniciar -> Executar -> Regedit)
  • Navegue até a seguinte chave: HKEY_CURRENT_USER\SOFTWARE\Microsoft
  • Verifique se existe a chave Avalon.Graphics
  • Se ela não estiver aparecendo, tente criar uma nova chave com este nome. Ao confirmar, talvez ele reclame que já existe uma chave com este nome. Não ligue pra isso, e procure a chave Avalon.Graphics, que vai estar na lista agora.
  • Adicione um novo valor DWORD, com o nome DisableHWAcceleration, e o valor 1.
  • Reinicie o Windows
Como seu registro deve ficar após as alterações
Como seu registro deve ficar após as alterações

Daí, na próxima vez que você abrir o Visual Studio (ou o MSN / Windows Live Messenger 2011), vai ver que ele está renderizando corretamente o texto e toda a interface. Isso também vai fazer com que qualquer outra aplicação WPF funcione corretamente nesta placa. Nesta minha máquina, isso não causou problemas de performance, mesmo este procedimento desabilitando a aceleração de vídeo por Hardware em aplicações WPF.

UPDATE: Em algumas máquinas com Windows 7, a mudança no registro descrita acima resolve para o Visual Studio, mas para o MSN é necessário atualizar o driver da placa de vídeo para a versão mais nova… O problema é encontrar esse driver, pois o site da SiS vive quebrado ou fora do ar.

UPDATE 2: O link a seguir tem um driver que, segundo relatos, funciona para a solução acima inclusive para monitores externos, sem deixar a imagem piscando ou com flickering: ftp://ftp.clevo.com.tw/M7xxS/VGA/VGA_W7.zip.

PS: Cuidado ao alterar o Registro do Windows. Não me responsabilizo por qualquer dano causado durante a tentativa de realizar esta alteração. Faça por sua conta e risco!

Fonte: http://msdn.microsoft.com/en-us/library/aa970912.aspx

20 Responses to Resolvendo problemas da SiS Mirage 3 com o Visual Studio 2010 (e outras aplicações que usam WPF)

  1. […] textos do Visual Studio, então resolvi caçar na web alguma solução, e encontrei estes posts do Amirton Chagas e da MSDN que me ajudaram a resolver, então se alguém tiver o mesmo problema, fica ai a dica […]

  2. Egidio disse:

    Obrigado pela dica, mas comigo não funcionou, estou utilizando o Windows 7 Ultimate 64 bits, testei acrescentando um DWORD com 32 e com 64bits, mas nenhum funcionou, o Windows também não reclamou quando eu criei a chave Avalon.Graphics.
    Abraços.

  3. Caetano Matos disse:

    MUITO OBRIGADO! Fiquei semanas procurando algo sobre isso ! finalmente achei algo… obrigado, obrigado e obrigado!

  4. Caetano Matos disse:

    me precipitei… no visual studio tudo ok, mas no msn 2011 continua o erro…
    :((( *@&*@$&*@$

  5. Caetano Matos disse:

    Luz?

  6. Alex disse:

    Estou com esse problema tambem com o Messenger 2011, porém no meu caso nao consegui fazer o desgr**(% funcionar…

    Ja alterei o valor no registro e atualizei o driver para ultima versao… mesmo assim…

    Alguem sabe de mais alguma coisa a esse respeito?

  7. Rodrigo disse:

    Fala Alex ,comigo tbm naum deu certo mas encontrei uma solução em outro lugar que funcionou tenta ai http://br.answers.yahoo.com/question/index?qid=20101009234356AAwBoiN um abraço … espero ter ajudado

  8. Rodrigo, muito obrigado. Funcionou perfeitamente com esse driver!

  9. thiago Batista disse:

    Muito bom o tutorial, mas o meu é windows 7 64bits, eu fiz tudo conforme o explicado e só funcionou o visual Studio 2010, o msn fica aquela coisa feia. alguem tem alguma idéia de com eu faço para resolver isso?

  10. fernando disse:

    Realmente o drive q vc indicou resolveu! parabens e obrigado!

  11. Lara Polix disse:

    Estou com esse lindo problema da placa de video, ja troquei o drive umas 10 vezes, e até resolvia o problema, porem a melhor visualização do meu monitor é 1280×800, e a unica versão do Drive que (eu encontrei) tem essa opção da esse bug no messeger. help?

  12. Anderson disse:

    Cara muitoooo bom cara.

    Sinceramente muito foda, o único tutorial em toda a internet que resolveu meu problema..

    Muito obrigado desde já. 😀

  13. guilherme disse:

    Muito bom, deu certo no meu pc (movement NB914W).

    Apenas o som que fica chiando :/
    Mas isso já havia antes.

  14. Bruno disse:

    eu uso este driver e com ele instalado, a chamada de video do facebook simplesmente não funciona…to passando raiva com esse driverzinho de merda…sem instalar, o video abre normalmente, porem lento, claro…instalando, a tela fica preta e trava…jogo tb, nem the sims 3 carrega….alguem tem uma solucao pra esse meu caso?

Deixe um comentário