IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

Comment faire apparaître la fenêtre du commande du navigateur lors d'un téléchargement sans le clic droit


Sujet :

ASP.NET

  1. #1
    Membre habitué

    Homme Profil pro
    Informatique en tant qu'autodidacte passionné
    Inscrit en
    Mars 2009
    Messages
    185
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Informatique en tant qu'autodidacte passionné
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2009
    Messages : 185
    Points : 137
    Points
    137
    Billets dans le blog
    1
    Par défaut Comment faire apparaître la fenêtre du commande du navigateur lors d'un téléchargement sans le clic droit
    Bonjour,

    Comment faire apparaître la fenêtre de commande du navigateur ( proposant les différentes options :Ouvrir, Enregistrer, Enregistrer Sous, Exécuter) , sans sans avoir recours au clic droit ?

  2. #2
    Expert éminent
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Points : 9 512
    Points
    9 512
    Par défaut
    Salut,

    Comme indiqué dans cette réponse: http://www.developpez.net/forums/d12...e/#post7071242. Cet en-tête: Response.AppendHeader("Content-Disposition", "attachment; filename=" & tonDocument) permet au navigateur de proposer la sauvegarde ou l'ouverture du document.

    En modifiant attachment en inline le document sera ouvert dans le navigateur lui-même.

    A+

  3. #3
    Membre habitué

    Homme Profil pro
    Informatique en tant qu'autodidacte passionné
    Inscrit en
    Mars 2009
    Messages
    185
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Informatique en tant qu'autodidacte passionné
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2009
    Messages : 185
    Points : 137
    Points
    137
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Immobilis Voir le message
    Salut,

    Comme indiqué dans cette réponse: http://www.developpez.net/forums/d12...e/#post7071242. Cet en-tête: Response.AppendHeader("Content-Disposition", "attachment; filename=" & tonDocument) permet au navigateur de proposer la sauvegarde ou l'ouverture du document.

    En modifiant attachment en inline le document sera ouvert dans le navigateur lui-même.

    A+
    Bonjour,

    En fait, ce que je cherche à faire avec le clic gauche est :
    - Faire apparaître la boite de dialogue du navigateur ( Enregistrer Sous, Enregistrer, Ouvrir), et non ouvrir automatiquement le document dans le navigateur.

    Considérant que nos amis du forum Javascript préconisent plutôt la compression du fichier en format .zip, ce qui à tous les coups, ouvre la boite de dialogue recherchée, et considérant que dans l'immédiat,et sauf absence de solution, je ne ne veux pas proposer le format .zip , car je ne trouve pas cette solution très ésthétique (sur le plan visuel), sur une page :

    J'ai appliqué ce code que j'ai associé à un bouton :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Partial Class Default2
        Inherits System.Web.UI.Page
     
    Protected Sub Button1_Click(sender As Object, e As System.EventArgs) Handles Button1.Click
            Response.HeaderEncoding = System.Text.Encoding.UTF8
            Response.AppendHeader("Content-Disposition", "inline; filename=" & "dossier.pdf")
            Response.TransmitFile("~\Telechargement\dossier.pdf")
            Response.End()
     
        End Sub
     
    End Class
    qui m'ouvre directement le document dans le navigateur , et c'est cela que je ne voulais pas, car ce code peut être directement remplacé par un hyperlink sur la page elle même en mode Design en une ligne, et qui produit le même résultat.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <asp:HyperLink ID="HyperLink2" runat="server" 
                NavigateUrl="~/telechargement/dossier.pdf">HyperLink</asp:HyperLink>
    Le remplacement de Attachment par Inline , n'a aucune incidence sur le résultat obtenu.

  4. #4
    Expert éminent
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Points : 9 512
    Points
    9 512
    Par défaut
    Ce n'est pas inline qu'il faut mettre mais attachmentCeci était juste une remarque en passant:
    Citation Envoyé par Immobilis Voir le message
    En modifiant attachment en inline le document sera ouvert dans le navigateur lui-même.

  5. #5
    Membre habitué

    Homme Profil pro
    Informatique en tant qu'autodidacte passionné
    Inscrit en
    Mars 2009
    Messages
    185
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Informatique en tant qu'autodidacte passionné
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2009
    Messages : 185
    Points : 137
    Points
    137
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Immobilis Voir le message
    Ce n'est pas inline qu'il faut mettre mais attachmentCeci était juste une remarque en passant:
    Merci pour ton intervention.

    Justement, j'ai d'abord essayé avec inline, puis avec attachment

    Les deux valeurs aoutissent au même résultat.

  6. #6
    Membre habitué

    Homme Profil pro
    Informatique en tant qu'autodidacte passionné
    Inscrit en
    Mars 2009
    Messages
    185
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Informatique en tant qu'autodidacte passionné
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2009
    Messages : 185
    Points : 137
    Points
    137
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Immobilis Voir le message
    Ce n'est pas inline qu'il faut mettre mais attachmentCeci était juste une remarque en passant:
    C'est résolu.

    Ce qui s'est passé : sur la même page :
    -le lien hyperlink pointait vers le fichier avec la valeur inline
    -le lien bouton pointait cers ce même fichier avec la valeur attachment

    En supprimant le lien Hyperlink pour ne garder que le bouton, le clic gauche sur ce bouton déclenche la fenêtre d'enregistrement du navigateur.

    Donc le code définitif d'un bouton associé à un fichier à télécharger , quel qu'il soit, ouvre une fenêtre d'enregistement avec le clic gauche comme ceci :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Partial Class Default2
        Inherits System.Web.UI.Page
        Protected Sub Button1_Click(sender As Object, e As System.EventArgs) Handles Button1.Click
            Response.HeaderEncoding = System.Text.Encoding.UTF8
            Response.AppendHeader("Content-Disposition", "attachment; filename=" & "dossier.pdf")
            Response.TransmitFile("~\Telechargement\dossier.pdf")
            Response.End()
       End Sub
    End Class
    Merci Immobilis, et merci Shadam

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment faire fonctionner une fenêtre Login
    Par Cazaux-Moutou-Philippe dans le forum WinDev
    Réponses: 3
    Dernier message: 29/10/2006, 12h00
  2. Réponses: 1
    Dernier message: 22/11/2005, 11h00
  3. Réponses: 9
    Dernier message: 13/08/2005, 12h19
  4. [Stratégie] Erreurs: faire apparaître une fenêtre
    Par seb.ch dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 04/08/2005, 15h08
  5. Réponses: 2
    Dernier message: 13/12/2004, 15h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo