Bonjour,

J'essais de faire marcher le download d'un fichier sur safari et rien à faire, la fenêtre s'ouvre mais la boite de dialogue ouvrir/enregistrer/annuler ne s'affiche pas.

Le code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
 
            //vide le buffer
            Response.Clear();
            //utilise un buffer de sortie
            Response.BufferOutput = true;
 
            // demande ouvrir enregistrer annuller
            Response.AddHeader("Content-Disposition", "inline; filename=" + Server.HtmlEncode(fileName));
            // ajoute au header la longueur du fichier
            Response.AddHeader("Content-Length", excelFile.Length.ToString());
            // la page expire dessuite
            Response.Expires = 0;
            // retire les informations en cache
            Response.ExpiresAbsolute = DateTime.Now;
            // désactive le cache
            Response.Cache.SetNoStore();
            Response.Cache.SetCacheability(HttpCacheability.NoCache);
            Response.CacheControl = "no-cache";
 
 
            // Format Excel 2007
            Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
 
            //Response.OutputStream.Write(excelFile, 0, excelFile.Length);
            for (int i = 0; i < excelFile.Length; i++)
            {
                // écriture byte à byte du flux de sortie
                Response.OutputStream.WriteByte(excelFile[i]);
            }
            // envoie de toutes les sorties bufferisées au client
            Response.Flush();
            // ferme le socket de connexion 
            Response.Close();
            // envoie le EndRequest event
            Response.End();
Merci d'avance.