IE7 está solicitando para msxml3.dll controle ActiveX ao tentar gráficos SVG exibição

StackOverflow https://stackoverflow.com/questions/1221096

  •  10-07-2019
  •  | 
  •  

Pergunta

Herdamos um novo produto que estamos apoiando. É uma aplicação web que exibe gráfico (s) usando SVG.

Na minha máquina, ele funciona perfeitamente. Ele carrega e mostra os gráficos SVG usando o Adobe SVG Viewer 3.0. Enquanto na máquina cliente, os gráficos SVG não vou carga.

notei que a aplicação web está solicitando para o controle ActiveX MSXML3 durante carregamento da página. Mesmo se você permitir que o referido controle ActiveX para executar, os gráficos SVG não iria aparecer.

Eu verifiquei na minha máquina (Ferramentas-> Manage Add-ons-> Ativar ou Add-ons Disable) e nem sequer usar MSXML3.DLL. O add-on ativa somente é Adobe SVG Viewer 3.0.

Ambos máquina estiver usando IE7 e ambos estão usando os mesmos "conjuntos de dados".

O que poderia ser os possíveis problemas aqui?

Obrigado!

Foi útil?

Solução 2

máquina do Cliente tem Visual Studio 2005 instalado.

Adobe SVG Viewer e Visual Studio 2005 ódios uns aos outros como documentado neste artigo KB. http://support.microsoft.com/kb/916442

Nós incorporar o gráfico SVG assim:

<embed src="PaintSVG?id=12345" type="image/svg+xml"></embed>

Quando você tiver VS2005 instalado, “associa o tipo MIME application / xml com a extensão de nome de arquivo .aspx” agora IE pensa que está a incorporação de um arquivo "aspx" e quando ele descobre que este arquivo "aspx" é um documento XML, ele irá tentar carregá-lo como tal (explica por que ele está pedindo para o controle ActiveX MSXML3).

Como um trabalho em torno, precisamos "truque" IE que estamos realmente a incorporação de um arquivo SVG, adicionando os seguintes parâmetros no final do URL:

&Dummy=SVG-VS2005-WorkAround.svg

Assim:

<embed src="PaintSVG?id=12345&Dummy=SVG-VS2005-WorkAround.svg" type="image/svg+xml"></embed>

Outras dicas

MSXML3 é construído em em todos os sistemas operacionais formar XP para cima. No entanto, às vezes você pode precisar de uma versão superior do que (digamos SP10 vem com o Vista). O SP máximo que você pode baixar é SP7. Todos os outros só estão disponíveis via Windows Update.

Você pode usar o link fornecido por Chloe: http://www.microsoft.com/downloads/details.aspx?familyid=28494391-052B-42FF-9674-F752BDCA9582&displaylang=en para obter MSXML 3.

Como por minha MSXML conhecimento 6 não será suficiente para um aplicativo que precisa MSXML 3.

Além disso, você pode usar Dependency Walker (disponível aqui ) para verificar o que dll a aplicação necessidades ActiveX.

Apenas um palpite, mas tente instalar este
Microsoft XML Parser (MSXML) 3.0 Service Pack 7 (SP7)
http://www.microsoft. com / download / details.aspx? familyid = 28494391-052B-42FF-9674-F752BDCA9582 & displaylang = en

Ou o (aparentemente) versão mais recente deste
Microsoft XML Core Services (MSXML) 6.0
http://www.microsoft. com / download / details.aspx? familyid = 993c0bcf-3bcf-4009-be21-27e85e1857b1 & displaylang = en

Você provavelmente vai encontrar esta instalado ou não instalado na Add / caixa de diálogo Remover Programas no Painel de Controle.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top