ASP a subi plusieurs modifications et améliorations importantes. Si vous mettez à jour votre application à partir d'une version précédente de ASP, vous devez prendre en considération ces modifications.
Remarque Pour plus d'informations sur les nouvelles fonctionnalités de ASP, consultez Nouveautés de ASP.
La mise en mémoire tampon est maintenant activée par défaut. Dans IIS 4.0, la mise en mémoire tampon du contenu était désactivée par défaut. Dans IIS 5.0, à moins qu'un script ne désactive de façon spécifique la mise en mémoire tampon, son résultat est toujours mis en mémoire tampon. Cela signifie que le résultat final sera envoyé au client une fois le traitement terminé ou lorsque le script appellera la méthode Response.Flush. Pour plus d'informations, consultez la section « Mise en mémoire tampon du contenu » de la rubrique Envoi de contenu au navigateur.
Response.IsClientConnected. Dans IIS 4.0, Response.IsClientConnected ne renvoyait les informations correctes que si un fichier ASP avait envoyé un contenu au navigateur. Dans IIS 5.0, un fichier ASP peut utiliser la propriété IsClientConnected avant d'envoyer un contenu au navigateur. Pour plus d'informations, consultez IsClientConnected.
Meilleure sécurité des fichiers Include. Dans IIS 4.0, lorsqu'un fichier Include se trouvait dans une racine virtuelle mappée sur un chemin d'accès physique, ASP n'utilisait pas les informations d'identification de sécurité du chemin d'accès physique pour traiter le fichier. Dans IIS 5.0, ASP applique les informations d'identification du chemin d'accès physique lors du traitement de fichiers Include. Pour plus d'informations, consultez Ajout de fichiers.
Comportement par défaut des chaînes de requête de documents. Dans IIS 5.0, si un fichier .asp (ou .cdx) est configuré comme document par défaut, il peut maintenant recevoir une chaîne de requête d'une URL qui ne spécifie pas ce document par défaut. Par exemple, les URL http://www.microsoft.com/default.asp?newuser=true et http://www.microsoft.com/?newuser=true enverront toutes les deux une valeur de chaîne de requête au fichier .asp par défaut.
Balises de transaction. IIS 4.0 utilisait les balises de transaction required, requires new et not supported pour indiquer que ASP commençait une nouvelle transaction. Dans IIS 5.0, ce comportement reste inchangé. Toutefois, si un fichier .asp utilise les nouvelles méthodes Server.Execute ou Server.Transfer pour exécuter un fichier .asp qui fait partie d'une transaction, l'état de la balise de transaction est maintenu pour le second fichier .asp. Si les balises de transaction du second fichier .asp indiquent que les transactions ne sont pas prises en charge ou obligatoires, la transaction existante sera alors utilisée et une nouvelle transaction ne sera pas démarrée.
Comportement des objets portant la marque Both (à la fois cloisonnés et libres). Un objet COM portant la marque Both (à la fois cloisonnés et libres) qui ne prend pas en charge le placeur libre de threads échouera s'il est stocké en état Application. Les composants portant la marque Both (à la fois cloisonnés et libres) doivent regrouper le placeur libre de threads pour être stockés en état Application.
Entrées configurables déplacées vers la métabase. Les entrées de Registre IIS 4.0 suivantes se trouvent désormais dans la métabase :
ProcessorThreadMax
ErrorsToNTLog
Pour IIS 5.0, tous les paramètres configurables pour ASP peuvent être modifiés depuis la métabase. Pour plus d'informations, consultez À propos de la métabase.
Sécurité des objets COM du serveur local. IIS utilise une nouvelle fonctionnalité COM Windows appelée masquage pour permettre à des applications du serveur local instanciées à partir d'un fichier .asp d'avoir le contexte de sécurité du client d'origine. Dans les précédentes versions, l'identité attribuée à l'objet COM du serveur local dépendait de l'identité du serveur qui avait créé l'instance d'objet.
Objets libérés plus tôt. Dans IIS 4.0, les objets COM n'étaient libérés que lorsque ASP avait terminé le traitement d'une page. Dans IIS 5.0, si un objet COM n'utilise pas la méthode OnEndPage et que le nombre de référence de cet objet est zéro, l'objet est libéré avant la fin du traitement.