Mensagem de erro "Permissão negada" quando você ler as propriedades do objeto local que está dentro de um aplicativo HTML

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: 816885
Sintomas
Quando você lê certas propriedades do objeto local que está dentro de um aplicativo de HTML (HTA), você receberá uma mensagem de erro "Permissão negada". As propriedades relevantes do objeto local incluem:
  • Location.href
  • Location.hostname
  • Location.reload
Observação Você pode notar esse erro apenas se você usar um script de configuração automática nas configurações de rede local (LAN) do Microsoft Internet Explorer.

Se as ferramentas de depuração estiverem instaladas no seu computador, você receberá uma mensagem de erro semelhante à seguinte:
Erro de tempo de execução. Você deseja depurar? Erro de linha 12: Permissão negada
Se as ferramentas de depuração não estiverem instaladas no computador, você receberá uma mensagem de erro semelhante à seguinte:
Ocorreu um erro no script desta página. Caractere da linha: 13: erro 2: permissão negada código: 0 URL: http://WebServer/ FileName .HTA que deseja continuar executando scripts nesta página?
Observação Você pode perceber esse problema apenas se o script de configuração automática tem o valor DIRECT .
Resolução
Para resolver esse problema, use qualquer um dos seguintes métodos:

Observação Os seguintes métodos baseiam no exemplo é mencionado na seção "Mais informações" deste artigo. Portanto, o código e nomes de arquivo nesses métodos podem ser diferentes do seu código e de seus nomes de arquivo.
  • Código rígido de um servidor proxy nas configurações do servidor proxy do Internet Explorer em vez de usar um script de configuração automática e, em seguida, pressione F5 para atualizar o HTA no navegador.
  • Use um nome de host em vez de um nome de domínio totalmente qualificado (FQDN) para acessar o caminho para o HTA.
  • Use um endereço IP para acessar o HTA.
  • Adicione o site que você está acessando à zona de confiáveis ou para a zona restrita.
  • Não use o objeto local no seu código.
  • Clique para desmarcar a caixa de seleção incluir todos os sites que ignoram o servidor proxy em configurações de segurança do Internet Explorer.
Situação
Esse comportamento é por design.
Mais Informações

Etapas para reproduzir o comportamento

  1. Inicie o Internet Explorer.
  2. No menu Ferramentas , clique em Internet opções .
  3. Na guia conexões , clique em LAN configurações .
  4. Nas configurações da rede Local (LAN) de caixa de diálogo, clique para selecionar a caixa de seleção Usar script de configuração automática . Veja que nenhuma das caixas de seleção está marcada.
  5. Na caixa endereço , digite o caminho para o script de configuração automática.
  6. Use o bloco de notas para criar um arquivo de texto chamado Default.hta.
  7. Adicione o seguinte código HTML ao arquivo Default.hta:
    <html><head> <title>HTA Location.href bug reproduction</title><HTA:APPLICATION ID="oBugRepro" APPLICATIONNAME="BugRepro"><SCRIPT LANGUAGE="JavaScript">function ShowFrame(){var strLocation;strLocation = top.fraTabs.location.href; }</SCRIPT></head><frameset id="fstWorkAreaMain" name="fstWorkAreaMain" rows="40%,60%"><frame src="about:blank" id="fraTabs" name="fraTabs" APPLICATION="yes"><frame src="Main.htm" id="fraMain" NAME="fraMain" APPLICATION="yes"></frameset></html>
  8. Use o bloco de notas para criar um arquivo de texto chamado Main.htm.
  9. Adicione o seguinte código HTML ao arquivo Main.htm:
    <HTML><BODY style="background-color:gainsboro"><P>Main frame</P><input id="cmdButton" type="button" onclick="top.ShowFrame()" value="Click me to reproduce the behavior"></input></BODY></HTML>
  10. Coloque os dois arquivos, Default.hta e Main.htm, em um diretório virtual chamado HTARepro em um servidor Web.
  11. Certifique-se que você tenha ativado o acesso anônimo ao conteúdo do diretório virtual HTARepro.
  12. Digite o seguinte comando em um prompt de comando:
    Mshta.exe http:// WebServer /HTARepro/Default.hta
    Observação Substitua WebServer o FQDN do servidor Web que você está usando.
  13. No aplicativo HTA, clique em Click me para reproduzir o comportamento . Você recebe uma das mensagens de erro mencionadas na "Sintomas" seção deste artigo.
Referências
Para obter mais informações, visite o seguinte site da Microsoft Developer Network (MSDN):Para obter informações adicionais, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
314209Você não pode acessar o objeto local do pai de uma janela filho

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 816885 - Última Revisão: 05/21/2007 06:50:24 - Revisão: 2.2

Microsoft Internet Explorer 6.0 Service Pack 1

  • kbmt kbprb kbbug kbwebbrowser kbscript kbmshtml KB816885 KbMtpt
Comentários