mem64k
mem64k

Reputation: 748

"Access is denied" by executing .hta file with JScript on Windows XP x64

I have a simple HTML (as HTA) application that shows strange behavior on Windows XP x64 machine. I getting periodically (not every time) error message "Access is denied." when I start the application. The same application on Windows XP 32bit runs just fine...

Does somebody has any idea or explanation?

Error message:

Line: 18
Char: 6
Error: Access is denied.
Code: 0
URL: file:///D:/test_j.hta

Here is the code of my "test_j.hta":

<html>

<head>
<title>Test J</title>

<HTA:APPLICATION 
     ID="objTestJ" 
     APPLICATIONNAME="TestJ"
     SCROLL="no"
     SINGLEINSTANCE="yes"
     WINDOWSTATE="normal"
>

<script language="JScript">

function main()
{
     //window.alert("test");
     window.resizeTo(500, 300);        
}

function OnExit()
{
    window.close();
}

</script>

</head>

<body onload="main()">
     <input type="button" value="Exit" name="Exit" onClick="OnExit()" title="Exit">
</body>
</html>

Upvotes: 2

Views: 3259

Answers (3)

Bill Paetzke
Bill Paetzke

Reputation: 13572

With both delay and try-catch:

setTimeout(function() {
    try { 
        window.resizeTo(500, 300); 
    } 
    catch(e) { }
}, 100);

Upvotes: 1

Ittai
Ittai

Reputation: 5915

Just a quick word for anyone who passes here I've run into a similar problem (mine is when the document is already loaded) and it is due to the browser not being ready to perform the resize/move actions whether it is due to not finishing loading or (like in my case) when it is still handling a previous resize request.

Upvotes: 1

AnthonyWJones
AnthonyWJones

Reputation: 189457

Try adding a try catch around the startup code

try
{ 
    window.resizeTo(500, 300); 
} catch(e) { }

Alternatively try setTimeout:-

setTimeout(function() {
    window.resizeTo(500, 300);
}, 100);

Upvotes: 2

Related Questions