[This is preliminary documentation and subject to change]
Important Changes in ASP
ASP has undergone several important changes and enhancements. If
you are updating your application from a previous version of ASP,
you should be aware of these changes.
Note
To learn about new ASP features, see What's New in ASP.
- Buffering On by Default In IIS 4.0, response
buffering was off by default. In IIS 5.1, unless a script
specifically turns off buffering, its output is always buffered.
This means that the final output is sent to the client at the
completion of processing or when the script calls the
Response.Flush method. When upgrading from IIS 4.0 to
IIS 5.1, the IIS 4.0 settings are maintained. Therefore,
response buffering remains off until it is turned on. For more
information, see the Buffering Content section in the Sending Content to the
Browser topic.
- Response.IsClientConnected In IIS 4.0,
Response.IsClientConnected returned the correct information
only if an ASP file sent content to the browser. In IIS 5.1,
an ASP file can use the IsClientConnected property prior to
sending content to the browser. For more information, see IsClientConnected.
- Improved Include File Security In IIS 4.0,
when an include file resided in a virtual root mapped to a physical
path, ASP did not use the security credentials of the physical path
to process the file. In IIS 5.1, ASP applies the credentials
of the physical path when processing include files. For more
information, see Including Files.
- Default Document Query String Behavior In
IIS 5.1, if an .asp (or .cdx) file is configured as the
default document, it can now receive a query string from a URL that
does not specify the default document. For example, the URLs
http://www.microsoft.com/default.asp?newuser=true and
http://www.microsoft.com/?newuser=true will both send a
query string value to the default .asp file. - Transaction Flags IIS 4.0 used the
required, requires new, and not supported
transaction flags to indicate that ASP was starting a new
transaction. In IIS 5.1, this behavior is unchanged. However,
if an .asp file executes a transacted .asp file using the new
Server.Execute or Server.Transfer methods, then the
transaction flag state is maintained for the second .asp file. If
the second .asp file's transaction flags indicate that transactions
are supported or required, then the existing transaction will be
used and a new transaction will not be started.
- Behavior of Both-Modeled Objects A Both-Modeled COM
object which does not support the Free-Threaded Marshaller will
fail if it is stored in Application state. Both-Modeled components
must aggregate the Free-Threaded Marshaller to be stored in
Application state.
- Configurable Entries Moved to the Metabase The
following IIS 4.0 registry entries are now in the metabase:
- Security for Local Server COM Objects IIS uses a
new Windows COM feature called cloaking to enable local
server applications instantiated from an .asp file to have the
security context of the originating client. In previous versions,
the identity assigned to the local server COM object depended on
the identity of the user who created the object instance.
- Objects Released Earlier In IIS 4.0, COM
objects were only released when ASP finished processing a page. In
IIS 5.1, if a COM object does not use the OnEndPage
method and the reference count for the object is zero, then the
object is released prior to the completion of processing.
- Improved UTF-8 and Multi-byte Character Support In
IIS 5.1 and IIS 6.0, UTF-8 and multi-byte characters are supported
in all of the ASP built-in objects. This includes form data
returned in the Response.QueryString and Response.Form
collections.
© 1997-2001 Microsoft Corporation. All rights reserved.