Sempre que posso reforço bem a questão que para um Sistema Operacional ou programa possa funcionar bem este tem que estar sendo constantemente atualizado.
No computador temos que ter esta preocupação tanto com o hardware (Som, Vídeo, etc.) quanto ao software (Windows, programas, antivírus, etc.), no Tutorial Atualizando Drivers de Placa mãe e Periféricos (Clique Aqui) abordamos a parte física do computador, mas reparei que toda vez que pedia para atualizar o DirectX de uma determinada máquina o mesmo só era feito pela metade, um erro bem comum até mesmo para pessoas que lidam com manutenção de hardware.
O que é o DirectX?
No computador temos a parte física que seria o hardware (placa mãe, placa de vídeo, etc.) e o software que nada mais são que programas ou instruções (drivers e API's) que comandam o hardware.
Quer um exemplo? Note que quando queremos conectar a internet clicamos no ícone do discador que liga o modem, que por sua vez disca para o provedor, recebe e envia sinais codificados. Tudo isso sem apertar ou utilizar botões físicos, tudo foi feito através de software.
A proposta do DirectX foi de implantar numa linguagem comum e universal a interface do software com o hardware independente do fabricante ou modelo utilizado. Assim o DirectX age como uma grande dicionário de programação, sempre haverá uma interface entre o hardware e o software sem que o desenvolvedor do jogo tenha obrigação de conhecer tudo sobre o hardware, até porque seria humanamente impossível. Assim sendo um jogo tanto roda numa máquina que possui uma placa dedicada de vídeo, quanto numa máquina que tenha um vídeo on-board , claro que respeitando as limitações físicas desta.
Por isso que é tão importante para jogos e até mesmo alguns outros softwares que o DirectX esteja sempre atualizado, pois otimiza o uso e maximiza o rendimento do programa. Imagine um computador novo top de linha, utilizando uma versão do DirectX de 2 anos atrás, será que o jogo usará tudo que o hardware oferece?
Hoje em dia estamos utilizando o DirectX na versão 9.0c para XP e afins, mas como tudo na informática sofre atualizações constantes o mesmo ocorre com ele. Infelizmente por mais que pesquisei não consegui saber o porque a versão do directX 9.0c sofreu ao todo 15 atualizações desde o seu lançamento (Maio de 2005) e permanece com a nomenclatura inalterada, somente sendo acrescentado o mês e o ano no final, pessoalmente acredito que tenha sido atualizado somente alguns componentes não modificando a engine, assim estamos na versão 9.0c (Nov08).
Para baixar a versão mais nova do DirectX: Clique Aqui
Como saber a versão do DirectX instalada na sua máquina
Para saber qual a versão do DirectX instalado em seu computador é muito simples, digite no Executar:
dxdiag
Aparecerá esta janela:
Agora sabemos que a versão instalada em nosso computador é a 9.0c (4.09.0000.0904) aqui uma pequena tabela com os códigos de todas as versões:
Mas note que mesmo de posse do código saberemos somente qual a versão, como já citamos a versão do DirectX 9.0c teve ao todo 19 atualizações:
Assim teremos que verificar a data de criação ou modificação dos arquivos:
Somente assim saberemos pela data mais recente de criação ou modificação qual a provável versão do DirectX estamos utilizando.
Atualizando o DirectX
Após ter feito o download da versão mais atual do DirectX, iremos proceder a instalação.
Por segurança crie um ponto de Restauração do Sistema, não sabe criar? Clique Aqui
Agora que já criamos um ponto de restauração, podemos prosseguir a instalação:
Clique duas vezes no ícone do programa:
Aparecerá esta tela com os termos de uso do programa (EULA), clique em YES:
Agora iremos apontar o local onde será descompactado o executável e sua biblioteca, clique em Browse:
Eu particularmente prefiro sempre instalar na pasta C: Windows > System32 > DirectX:
Ficará como a imagem abaixo, tecle OK:
Como sempre instalo no mesmo diretório haverá a pergunta se quero reescrever arquivos, clico YES to ALL (Sim para Todos):
Aqui é que ocorre o erro ou desatenção na atualização, muitos param por aqui pensando que o DirectX foi instalado, quando na verdade ele foi apenas descompactado e está ainda por instalar!
O erro apresentado geralmente ocorre quando é feita uma atualização manual do DirectX, pois hoje em dia a maioria dos jogos contém a versão atual (pelo menos na época em que o jogo foi gravado) e seu instalador não necessita descompactar ele já possui as bibliotecas todas descompactadas e quando clicamos no ícone de atualizar ele realmente atualiza as bibliotecas. Para evitar possíveis erros ou demora na atualização do DirectX feche todos os programas não necessários, somente deixe os programs de segurança.
Vamos retornar na pasta que descompactamos o programa:
C: Windows > System32 > DirectX.
E procuraremos o executável: dxsetup e daremos dois cliques:
Aparecerá a janela de instalação, clique em aceitar o contrato e avançar:
Agora sim é que estamos realmente atualizando o DirectX da máquina:
Dependendo do hardware (Quantidade de memória RAM e processador) pode demorar um pouco e em alguns casos até haver travamentos, por isso aconselho que no momento em que tiver atualizando o DirectX não deixe outros programas abertos.
Pronto agora sim seu DirectX foi atualizado, clique em concluir e reinicie o computador para que os arquivos sejam modificados e carregados corretamente.
Problemas depois da Atualização do DirectX
Como todo o software podem ocorrer problemas depois da sua atualização, quer seja por corrompimento do arquivo ou até mesmo incompatibilidade do hardware com a versão do DirectX.
Lembramos que nem sempre a atualização trás melhorias, já presenciei casos que após a atualização do DirectX, um jogo que rodava perfeitamente passou a apresentar mensagens de erro, foi provavelmente uma incompatibilidade com a versão mais nova do DirectX. A maioria dos problemas de incompatibilidade são com hardwares mais antigos, assim sendo computadores fabricados após 2005 possuem menos chances de problemas de incompatibilidade.
Neste caso teremos que utilizar uma ferramenta extra, pois o DirectX não possui desinstalador e nem todos os usuários lembram de criar um ponto de restauração.
Vale ressaltar que sempre deverá ser criado um ponto de restauração, pois nem sempre se consegue desinstalar o DirectX e a formatação é a única forma na maioria dos casos.
Assim sendo o uso de desinstaladores será encarada como última opção antes de uma formatação, cito duas opções de desinstaladores.
O primeiro para a família Windows 9x (95, 98, 98SE e Millenium) e outro para todas as versões do Windows.
Leia atentamente o arquivo readme (leia-me) do programa que será utilizado, caso não possua conhecimentos da língua inglesa, use tradutores on-line uma boa pedida é o do Google.
Graças a Deus nunca tive problemas na atualização do DirectX que necessita-se a desistalação e os programas citados abaixo são exemplos de programas, não fiz testes para saber se realmente funcionam.
DirectX 9 Uninstaller
Após a desinstalação requer o cd de instalação do Windows.
Aqui o link para baixar o DirectX Uninstaller 9: Clique Aqui
DirectX Eradicator 2.0
Segundo o fabricante pode ser usado em todas as versões do Windows:
Para baixar o DirectX Eradicator 2.0: Clique Aqui
Bibliografia:
* http://support.microsoft.com/kb/150651/pt-br
** http://www.clubedohardware.com.br/artigos/964
Códigos das versões : http://pt.wikipedia.org/wiki/DirectX e http://en.wikipedia.org/wiki/DirectX
Curiosidade
Aqui o primeiro logo do Directx que durou até a versão 6 e ao lado o logo até a versão 9: