Microsoft KB Archive/928850

From BetaArchive Wiki
Knowledge Base


Error message when you view an ASP page that uses the server-side Response.Redirect method on a computer that has Windows XP Service Pack 2 installed: "Access denied" or "Permission denied"

Article ID: 928850

Article Last Modified on 1/18/2007



APPLIES TO

  • Microsoft Internet Explorer 6.0, when used with:
    • Microsoft Windows XP Home Edition
    • Microsoft Windows XP Professional



SYMPTOMS

Consider the following scenario:

  • You have a Microsoft Windows XP-based computer that has Microsoft Windows XP Service Pack 2 (SP2) installed.
  • You view an Active Server Pages (ASP) page that uses the server-side Response.Redirect method.

In this scenario, you receive one of the following error messages:

Error message 1


Access denied

Error message 2


Permission denied

CAUSE

This problem occurs because of a bug in the Microsoft Internet Explorer 6 update that is included in Windows XP SP2.

RESOLUTION

To resolve this problem, install the latest updates for Internet Explorer 6.

WORKAROUND

To work around this problem, issue a client-side redirect instead of a server-side redirect.

For example, modify the Response.asp file by using the following lines of code.

Microsoft provides programming examples for illustration only, without warranty either expressed or implied. This includes, but is not limited to, the implied warranties of merchantability or fitness for a particular purpose. This article assumes that you are familiar with the programming language that is being demonstrated and with the tools that are used to create and to debug procedures. Microsoft support engineers can help explain the functionality of a particular procedure. However, they will not modify these examples to provide added functionality or construct procedures to meet your specific requirements.

<html><head>

<script>document.location.replace('body.asp')</script>

</head></html>

Note The Body.asp file is the script that you create.

MORE INFORMATION

Steps to reproduce the problem

  1. On the Web server, use the following code examples to create the files, and then save the files in the same folder.

    Main.htm

    <HTML>
    
    <HEAD>
    
    <script language="javascript">
    
    function hideHelp () {
    
                    if (bodyfrm.readyState != "complete") {
    
                                    return;
    
                    }
    
                    var fn = bodyfrm.document.location.pathname;
    
                    
    
    }
    
     
    
    </script>
    
    </HEAD>
    
    <frameset cols="30%,*" >
    
    <frame name="bodyfrm" src="intermediate.asp" ></frame>
    
    <frame name="help" src="help.asp" ></frame>
    
    </frameset>
    
    </HTML>

    Intermediate.asp

    <%Response.Redirect "body.asp"%>

    Body.asp

    <HTML>
    
    <head>
    
    <title>Body Frame</title>
    
    <script language=javascript>
    
    </script>
    
    </head>
    
    <body onload="document.all.test.value='testing 1, 2, 3';">
    
    Body Frame
    
    <form>
    
    <input name="test">
    
    </form>
    
    </body>
    
    </html>

    Help.asp

    <HTML>
    
    <head>
    
    <title>Help Frame</title>
    
    </head>
    
    <body onload="parent.hideHelp()">
    
    Help Frame
    
    </body>
    
    </html>
  2. On a Windows XP SP2-based computer, open the Main.htm file by using Internet Explorer 6.
  3. Refresh the page until you receive one of the error messages that are mentioned in the "Symptoms" section.


Keywords: kberrmsg kbtshoot kbexpertiseadvanced kbprb KB928850