Internet Explorer não se aplica a uma folha de estilo global atualizado por GetHostInfo

Traduções deste artigo Traduções deste artigo
ID do artigo: 328803 - Exibir os produtos aos quais esse artigo se aplica.
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Expandir tudo | Recolher tudo

Neste artigo

Sintomas

Quando você especifica uma folha de estilo globais usando a implementação IDocHostUIHandler::GetHostInfo em um aplicativo que hospeda o controle de navegador da Web, a folha de estilo globais não pode ser alterada depois que foi aplicado na primeira vez.

Causa

MSHTML somente atualiza sua folha de estilo globais interno quando a folha de estilos é criada pela primeira vez.

Resolução

Um hotfix suportado está disponível no Microsoft. No entanto, esse hotfix destina-se a corrigir o problema descrito neste artigo. Aplique-o somente aos sistemas que apresentarem esse problema específico. Esta correcção poderá submetida a testes adicionais. Portanto, se você não tiver sido gravemente afetado por esse problema, recomendamos que você aguarde a próxima atualização de software que contém esse hotfix.

Se o hotfix está disponível para download, há uma seção "Download de Hotfix disponível" na parte superior neste artigo da Base de dados de Conhecimento. Se esta seção não for exibida, contate o atendimento e suporte para obter o hotfix.

Observação Se ocorrerem problemas adicionais ou se qualquer solução de problemas é necessária, talvez você precise criar uma solicitação de serviço separada. Os custos normais de suporte serão aplicados a questões de suporte adicionais e problemas que não se qualificam para esse hotfix específico. Para obter uma lista completa de números de telefone de suporte e Atendimento Microsoft ou para criar uma solicitação de serviço separada, visite o seguinte site:
http://support.microsoft.com/contactus/?ws=support
Observação O formulário "Download de Hotfix disponível" exibe os idiomas para os quais o hotfix está disponível. Se você não vir seu idioma, é porque um hotfix não está disponível para esse idioma.

A versão em inglês dessa correção apresenta os atributos de arquivo (ou posteriores) listados na tabela a seguir. As datas e horas desses arquivos são listadas na acordo hora universal coordenada (UTC). Quando você exibe as informações do arquivo, ele é convertido para a hora local. Para encontrar a diferença entre o UTC e a hora local, use a guia fuso horário na ferramenta Data e hora no painel de controle.
   Date      Time     Version       Size       File name
   -------------------------------------------------------
   03-Oct-02 13:14    6.0.2722.300  2,763,264  Mshtml.dll
				

Situação

A Microsoft confirmou que este é um problema no Microsoft Internet Explorer 6.

Mais Informações

Esse problema ocorre somente após MSHTML é inicializado. Isso significa que, se você abrir um documento não MSHTML (como um documento do Microsoft Word ou qualquer outro tipo de documento de servidor do documento ativo), na próxima vez que você abre um arquivo HTML, MSHTML reinicializa a folha de estilos globais com qual é fornecida na implementação IDocHostUIHandler::GetHostInfo .

Etapas para reproduzir o problema

  1. No Visual Studio. NET, crie um Microsoft Foundation Classes (MFC) interface de documento único (SDI) CHtmlView aplicativo.
  2. Adicionar uma variável de membro à classe de modo de exibição que irá armazenar a folha de estilo globais atual:
    class CMFCTestView : public CHtmlView
    {
    ...
    	LPWSTR m_pZoom;
    ...
    };
    
  3. Inicializar a variável de membro para a folha de estilos inicial que você deseja o construtor:
    CMFCTestView::CMFCTestView()
    {
    	m_pZoom = L"BODY{Zoom:200%;}";
    }
    
  4. Substitua a função virtual OnGetHostInfo CHtmlView para implementar o código para aplicar a folha de estilo globais através do método GetHostInfo . IDocHostUIHandler::GetHostInfo é implementada no CHtmlControlSite e chama o método que usa OnGetHostInfo no modo de exibição.
    // header file
    class CMFCTestView : public CHtmlView
    {
    ...
    virtual HRESULT OnGetHostInfo(DOCHOSTUIINFO *pInfo);
    ...
    };
    
    // implementation file
    HRESULT CMFCTestView::OnGetHostInfo(DOCHOSTUIINFO *pInfo)
    {
    	pInfo->pchHostCss = (LPWSTR)::CoTaskMemAlloc((lstrlenW(m_pZoom)+1)*2);
    	lstrcpyW(pInfo->pchHostCss, m_pZoom);
    	return S_OK;
    }
  5. Adicionar um menu item e seu manipulador para o CHTMLView classe derivada. No manipulador de menu, chame o método IWebBrowser2::Refresh() . IWebBrowser2::Refresh() aplica a nova folha de estilos globais à página da Web ativa.
    void CMFCTestView::OnActionTest()
    {
    	m_pZoom = L"BODY{Zoom:50%;}";
    	m_pBrowserApp->Refresh();
    }
    
  6. Atualize o método OnInitialUpdate do modo de exibição para apontar para sua página de teste HTML:
    void CMFCTestView::OnInitialUpdate()
    {
    	CHtmlView::OnInitialUpdate();
    	Navigate2(_T("http://myserver/mytestpage.htm"),NULL,NULL);
    }
  7. Criar e executar o aplicativo. Quando a página é exibida pela primeira vez, tudo aparece ampliado por 200 por cento.
  8. Use a ação menu que você adicionou ao aplicar o novo estilo. Sem o hotfix, as atualizações de página, mas a ampliação permanece a mesma. Depois de aplicar o hotfix, a página atualiza e aparece com a ampliação de 50 por cento.

Propriedades

ID do artigo: 328803 - Última revisão: sábado, 26 de outubro de 2013 - Revisão: 1.5
A informação contida neste artigo aplica-se a:
  • Microsoft Internet Explorer (Programming) 6.0
Palavras-chave: 
kbnosurvey kbarchive kbmt kbautohotfix kbhotfixserver kbqfe kbwebbrowser kbhtml kbie600sp2fix kbie600presp2fix kbfix kbbug KB328803 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 328803

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com