Este curto artigo serve como memória para mim e pode ser que seja útil a quem também tenha o mesmo problema…
Como uso o Cartão do Cidadão tenho instalado o software respectivo. Este coloca na pasta \windows\system32 algumas DLLs de Qt que necessita. Inicialmente pensei que seria um bocado desleixado dos autores colocarem aqui e não na pasta do programa, mas hoje penso que será uma necessidade para permitir que o Internet Explorer possa usar a autenticação do CC em sites como os de contratação pública.
O problema é que o QGIS usa também o Qt (pacote de programação de interfaces gráficas), e instala de forma bem comportada, as DLLs que precisa na sua própria pasta. Sucede que o Windows carrega primeiro as DLLs que encontra na pasta system32…
Como o Windows encontra as mesmas DLL’s na pasta system32 carrega estas, que são de uma versão mais antiga, em vez das que são incluídas no QGIS. O resultado é um erro críptico de “entry point not found”…
A solução que tinha encontrado inicialmente era simples: retirava as DLL’s do CC da pasta system32 sempre que usava o QGIS. E voltava a colocá-las lá quando queria usar o CC… very boring…
Mas há outra solução. O Windows obedece a uma ordem de pesquisa de DLL’s e sucede que a pasta onde se encontra o executável é procurada antes da system32. Assim, no caso do QGIS 1.7 basta copiarmos as DLL’s do Qt da pasta C:\OSGeo4W\bin para a pasta C:\OSGeo4W\apps\qgis\bin. E fica resolvido para todo o sempre, amen.
Duarte, obrigado pela dica.
Já tinha tido esse problema numa formação e a solução encontrada na internet, era a que mencionas em primeiro.
Fica aqui o registo desta solução, para futuros problemas 🙂
Abraço,
NS
Nelson, às vezes lá tropeçamos em soluções destas. O difícil depois é não esquecer!! 😉
parabens pelo descritivo e dicas do seu blog
Bom e Feliz Natal
Obrigado, e boas festas também!! Pró ano há mais!
problema resolvido!
Ambos a funcionar.
Obrigado