Errore di autorizzazione negata durante la lettura delle proprietà di un oggetto Percorso applicazione HTML

Avviso

L'applicazione desktop Internet Explorer 11, ritirata e fuori supporto, è stata disabilitata in modo permanente tramite un aggiornamento di Microsoft Edge su alcune versioni di Windows 10. Per altre informazioni, vedere Domande frequenti sul ritiro delle app desktop di Internet Explorer 11.

Questo articolo fornisce molti metodi per risolvere il messaggio di errore Autorizzazione negata che si verifica se si leggono le proprietà dell'oggetto Location all'interno di un'applicazione HTML (HTA).

Versione originale: Internet Explorer
Numero KB originale: 816885

Sintomi

Quando si leggono determinate proprietà dell'oggetto Location all'interno di un'applicazione HTML (HTA), è possibile che venga visualizzato un messaggio di errore Autorizzazione negata . Le proprietà rilevanti dell'oggetto Location includono:

  • Location.href
  • Location.hostname
  • Location.reload

Nota

Questo errore può essere visualizzato solo se si usa uno script di configurazione automatica nelle impostazioni LAN (Local Area Network) di Microsoft Internet Explorer.

Se gli strumenti di debug sono installati nel computer, è possibile che venga visualizzato il messaggio di errore seguente:

Si è verificato un errore di runtime. Eseguire il debug? Errore riga 12: autorizzazione negata

Se gli strumenti di debug non sono installati nel computer, è possibile che venga visualizzato il messaggio di errore seguente:

Si è verificato un errore nello script in questa pagina. Riga: 13 Char: 2 Errore: Autorizzazione negata Codice: 0 URL: http://WebServer/FileName.hta Continuare a eseguire script in questa pagina?

Nota

È possibile notare questo problema solo se lo script di configurazione automatica ha il valore DIRECT.

Risoluzione

Per risolvere il problema, usare uno dei metodi seguenti:

Nota

I metodi seguenti sono basati sull'esempio indicato nella sezione Passaggi per riprodurre il comportamento di questo articolo. Pertanto, il codice e i nomi di file in questi metodi possono essere diversi dal codice e dai nomi di file.

  • Codice rigido di un server proxy nelle impostazioni del server proxy di Internet Explorer anziché usare uno script di configurazione automatica e quindi premere F5 per aggiornare l'HTA nel browser.
  • Usare un nome host anziché un nome di dominio completo (FQDN) per accedere al percorso dell'HTA.
  • Usare un indirizzo IP per accedere all'HTA.
  • Aggiungere il sito Web a cui si accede all'area Attendibile o all'area con restrizioni.
  • Non usare l'oggetto Location nel codice.
  • Fare clic per deselezionare la casella di controllo Includi tutti i siti che ignorano il server proxy nelle impostazioni di sicurezza di Internet Explorer.

Passaggi per riprodurre il comportamento

  1. Avviare Internet Explorer.

  2. Scegliere Opzioni Internet dal menu Strumenti.

  3. Nella scheda Connections fare clic su Impostazioni LAN.

  4. Nella finestra di dialogo Impostazioni LAN (Local Area Network) fare clic per selezionare la casella di controllo Usa script di configurazione automatica . Assicurarsi che nessuna delle altre caselle di controllo sia selezionata.

  5. Nella casella Indirizzo digitare il percorso dello script di configurazione automatica.

  6. Usare Il Blocco note per creare un file di testo denominato Default.hta.

  7. Aggiungere il codice HTML seguente al file 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. Usare Blocco note per creare un file di testo denominato Main.htm.

  9. Aggiungere il codice HTML seguente al file 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. Inserire i due file, Default.hta e Main.htm, in una directory virtuale denominata HTARepro in un server Web.

  11. Assicurarsi di aver abilitato l'accesso anonimo al contenuto della directory virtuale HTARepro.

  12. Digitare il comando seguente al prompt dei comandi:

    mshta.exe http://WebServer/HTARepro/Default.hta
    

    Nota

    Sostituire WebServer con il nome di dominio completo del server Web in uso.

  13. Nell'applicazione HTA fare clic su Fare clic su di me per riprodurre il comportamento. Viene visualizzato uno dei messaggi di errore indicati nella sezione Sintomi di questo articolo.

Riferimenti

Per altre informazioni, vedere Introduction to HTML Applications (HTAs).