Fout Machtiging geweigerd bij het lezen van eigenschappen van een HTML-toepassingslocatieobject

Waarschuwing

De buiten gebruik gestelde, niet meer ondersteunde Internet Explorer 11-desktoptoepassing is permanent uitgeschakeld via een Microsoft Edge-update op bepaalde versies van Windows 10. Raadpleeg Veelgestelde vragen over de beëindiging van de desktoptoepassing voor Internet Explorer 11 voor meer informatie.

Dit artikel bevat veel methoden voor het oplossen van het foutbericht Machtiging geweigerd dat optreedt als u eigenschappen leest van het locatieobject dat zich in een HTML-toepassing (HTA) bevindt.

Oorspronkelijke versie: Internet Explorer
Origineel KB-nummer: 816885

Symptomen

Wanneer u bepaalde eigenschappen leest van het object Location dat zich in een HTML-toepassing (HTA) bevindt, kan het foutbericht Machtiging geweigerd worden weergegeven. De relevante eigenschappen van het object Location zijn onder andere:

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

Opmerking

Deze fout kan alleen optreden als u een automatisch configuratiescript gebruikt in de LAN-instellingen (Local Area Network) van Microsoft Internet Explorer.

Als er hulpprogramma's voor foutopsporing op uw computer zijn geïnstalleerd, wordt mogelijk het volgende foutbericht weergegeven:

Er is een runtimefout opgetreden. Wilt u fouten opsporen? Regel 12-fout: machtiging geweigerd

Als er geen hulpprogramma's voor foutopsporing op uw computer zijn geïnstalleerd, wordt mogelijk het volgende foutbericht weergegeven:

Er is een fout opgetreden in het script op deze pagina. Regel: 13 Teken: 2 Fout: Machtiging geweigerd Code: 0 URL: http://WebServer/FileName.hta Wilt u scripts op deze pagina blijven uitvoeren?

Opmerking

Mogelijk merkt u dit probleem alleen als uw automatische configuratiescript de direct-waarde heeft.

Oplossing

Gebruik een van de volgende methoden om dit probleem op te lossen:

Opmerking

De volgende methoden zijn gebaseerd op het voorbeeld dat wordt vermeld in de sectie Stappen voor het reproduceren van het gedrag van dit artikel. Daarom kunnen de code en de bestandsnamen in deze methoden verschillen van uw code en van uw bestandsnamen.

  • Codeer een proxyserver in de proxyserverinstellingen van Internet Explorer in plaats van een automatisch configuratiescript te gebruiken en druk vervolgens op F5 om de HTA in de browser te vernieuwen.
  • Gebruik een hostnaam in plaats van een FQDN (Fully Qualified Domain Name) om toegang te krijgen tot het pad naar de HTA.
  • Gebruik een IP-adres voor toegang tot de HTA.
  • Voeg de website die u opent toe aan de vertrouwde zone of aan de beperkte zone.
  • Gebruik het object Location niet in uw code.
  • Schakel het selectievakje Alle sites opnemen die de proxyserver omzeilen uit in de beveiligingsinstellingen van Internet Explorer.

Stappen voor het reproduceren van het gedrag

  1. Start Internet Explorer.

  2. Open het menu Extra en klik op Internet-opties.

  3. Klik op het tabblad Connections op LAN-instellingen.

  4. Klik in het dialoogvenster Local Area Network (LAN)-instellingen om het selectievakje Automatisch configuratiescript gebruiken in te schakelen. Zorg ervoor dat geen van de andere selectievakjes is ingeschakeld.

  5. Typ in het vak Adres het pad naar het automatische configuratiescript.

  6. Gebruik Kladblok om een tekstbestand met de naam Default.hta te maken.

  7. Voeg de volgende HTML-code toe aan het bestand 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. Gebruik Kladblok om een tekstbestand te maken met de naam Main.htm.

  9. Voeg de volgende HTML-code toe aan het Main.htm-bestand:

    <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. Plaats de twee bestanden, Default.hta en Main.htm, in een virtuele map met de naam HTARepro op een webserver.

  11. Zorg ervoor dat u anonieme toegang tot de inhoud van de virtuele map HTARepro hebt ingeschakeld.

  12. Typ de volgende opdracht bij een opdrachtprompt:

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

    Opmerking

    Vervang door WebServer de FQDN van de webserver die u gebruikt.

  13. Klik in de HTA-toepassing op Klik op mij om het gedrag te reproduceren. U ontvangt een van de foutberichten die worden vermeld in de sectie Symptomen van dit artikel.

Verwijzingen

Zie Inleiding tot HTML-toepassingen (HTA's) voor meer informatie.