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 :

Problème génération des png sous 2008 serveur (R1)


Sujet :

ASP.NET

  1. #1
    CUCARACHA
    Invité(e)
    Par défaut Problème génération des png sous 2008 serveur (R1)
    Salut,

    Toujours pour mon CMS.

    Je bosse en dev sous Windows 7, mon serveur de qualif est une dédibox sous windows 2008 x64 french.

    J'ai créé une page ASP.net qui régénère toutes les images à la demande. Ca fonctionne bien sur IIS de windows 7 mais ça n'a pas l'air de le faire avec mon serveur.

    Exemple :
    http://innovasites.innovacall.net/si...04_Contact.png

    Erreur du serveur dans l'application '/'.
    --------------------------------------------------------------------------------

    Une erreur générique s'est produite dans GDI+.
    Description : Une exception non gérée s'est produite au moment de l'exécution de la demande Web actuelle. Contrôlez la trace de la pile pour plus d'informations sur l'erreur et son origine dans le code.

    Détails de l'exception: System.Runtime.InteropServices.ExternalException: Une erreur générique s'est produite dans GDI+.

    Erreur source:

    Une exception non gérée s'est produite lors de l'exécution de la demande Web actuelle. Les informations relatives à l'origine et l'emplacement de l'exception peuvent être identifiées en utilisant la trace de la pile d'exception ci-dessous.

    Trace de la pile:


    [ExternalException (0x80004005): Une erreur générique s'est produite dans GDI+.]
    System.Drawing.Image.Save(Stream stream, ImageCodecInfo encoder, EncoderParameters encoderParams) +615257
    InnovaSites.Images.ImageFactory.Page_Load(Object sender, EventArgs e) +3260
    System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +25
    System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +42
    System.Web.UI.Control.OnLoad(EventArgs e) +132
    System.Web.UI.Control.LoadRecursive() +66
    System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +2428




    --------------------------------------------------------------------------------
    Informations sur la version : Version Microsoft .NET Framework :2.0.50727.4200; Version ASP.NET :2.0.50727.4016
    Alors que
    http://innovasites.innovacall.net/mu...eacarreaux.jpg
    Fonctionne bien...

    J'ai déjà commandé un nouveau serveur chez IKOULA pour transférer mes applis mais avant de finaliser la transaction, je veux être certain que l'erreur GDI+ est bien liée à la version de Windows Server.

    D'avance merci pour votre aide

    Laurent
    Dernière modification par Deepin ; 26/04/2010 à 11h19. Motif: Balises [QUOTE]...[/QUOTE] au lieu de [CODE]...[/CODE]

  2. #2
    Expert confirmé
    Avatar de Nicolas Esprit
    Homme Profil pro
    Consultant en technologies
    Inscrit en
    Février 2010
    Messages
    1 467
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en technologies
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 1 467
    Points : 4 066
    Points
    4 066
    Par défaut
    Bonjour,

    Je ne peux pas trop t'aider sur le coup là, mais d'autres ont déjà rencontré ce problème ici, et le bug est répertorié par Microsoft ici (enfin, c'est pour la même exception, peut être pas le même contexte).

    Peut être d'autres sur ce forum l'ont déjà rencontrée. Sinon, il va falloir voyager dans les bas-fond de Google jusqu'à trouver quelqu'un qui propose une solution.

    Bon courage

  3. #3
    CUCARACHA
    Invité(e)
    Par défaut
    En fait leur problème vient du fait qu'il n'arrivent pas à écrire le fichier or moi je ne l'écris pas, je transforme simplement ma réponse en image.

    Ca marche parfaitement sous 7... Dommage qu'ils n'aient pas créé un patch pour windows 2008.

    ++

    Laurent

  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 506
    Points
    9 506
    Par défaut
    Salut,

    C'est quoi le code de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    InnovaSites.Images.ImageFactory.Page_Load(Object sender, EventArgs e) +3260
    A+
    "Winter is coming" (ma nouvelle page d'accueil)

  5. #5
    CUCARACHA
    Invité(e)
    Par défaut
    J'ai trouvé une solution (sur le net)
    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
     
                    switch (suffix)
                    {
                        case "png":
                            //ImageToPublish.Save(Response.OutputStream, ImageFormat.Png);
                            MemoryStream MemStream = new MemoryStream();
                            Bitmap bitmap = new Bitmap(mappedImagePath);
                            // set the content type 
                            Response.ContentType = "image/png";
                            //send the image to the memory stream then output 
                            bitmap.Save(MemStream, System.Drawing.Imaging.ImageFormat.Png);
                            MemStream.WriteTo(Response.OutputStream); 
                            break;
                        default:
                            ImageToPublish.Save(Response.OutputStream, ImageToPublish.RawFormat);
                            break;
                    }
    Le PNG est un cas particulier... Maintenant ça fonctionne...

    Voici le résultat :

    http://innovasites.innovacall.net/fr-FR/acceuil.html

    L'image de fond, par exemple, est un png

    http://innovasites.innovacall.net/si...out/sitebg.png

    Merci

    ++

    Laurent

  6. #6
    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 506
    Points
    9 506
    Par défaut
    Citation Envoyé par Laurent Jordi Voir le message
    Maintenant ça fonctionne...
    N'oublie pas le tag résolu alors. Merci
    "Winter is coming" (ma nouvelle page d'accueil)

Discussions similaires

  1. Réponses: 0
    Dernier message: 21/01/2014, 15h53
  2. Problèmes Démarrage des services sous Linux
    Par clementp dans le forum Administration-Migration
    Réponses: 2
    Dernier message: 20/11/2009, 09h06
  3. Problème génération des clés de substitution
    Par Haneng dans le forum kettle/PDI
    Réponses: 1
    Dernier message: 30/03/2009, 15h30
  4. Transparence des PNG sous IE6 (background repeat etc.)
    Par Fredovsky dans le forum Mise en page CSS
    Réponses: 7
    Dernier message: 05/01/2009, 15h40
  5. Transparence des PNG sous IE6 et texte qui dépasse du conteneur
    Par shubakas dans le forum Mise en page CSS
    Réponses: 6
    Dernier message: 20/05/2008, 15h35

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