Quand tu places un response.write, tu envoies implicitement les en-tetes HTTP. Les cookies devant êtres envoyés dans l'en-tete HTTP, quand tu mets response.cookie, tu renvoies en fait l'en-tete HTTP, donc le serveur te jette.
Si tu n'as vraiment pas d'autre moyen de mettre ton response.cookie avant le premier response.write (quand je dis response.write, ca veut aussi dire les <%= %> et les textes hors du code ASP), alors tu dois bufferiser ta page, en mettant en PREMIER :
Response.Buffer=true