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

C# Discussion :

Contrôle WebBrowser freeze sur un site précis


Sujet :

C#

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 5
    Par défaut Contrôle WebBrowser freeze sur un site précis
    Bonjour,

    Je souhaite créer une application contenant un contrôle WebBrowser affichant le site suivant: http://www.maakiti.com. Cependant, l'application freeze lors du chargement de la page, pour une raison que j'ignore. N'importe quel autre site fonctionne. Le résultat est le même avec un WebBrowser WPF ou WinForms. L'application ne plante pas complètement car je peux toujours exécuter du code en arrière plan, il semblerait que ce ne soit que le thread UI qui plante. Je suis sous Windows 8 x64, et j'ai pu reproduire le problème sur deux autres pc. Je n'ai vraiment aucune idée d'où cela vient...

    Le problème est simple à reproduire, il suffit de créer un nouveau projet, d'ajouter un contrôle WebBrowser et d'exécuter:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    monWebBrowser.Navigate(new Uri("http://www.maakiti.com"));
    ... ou même :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    monWebBrowser.Source = new Uri("http://www.maakiti.com");
    Quelqu'un aurait une idée?

    Merci beaucoup d'avance.

  2. #2
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Billets dans le blog
    3
    Par défaut
    Si tu regarde les requêtes/réponses HTTP avec Fiddler, il n'y a pas d'erreur ?
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

  3. #3
    Membre éclairé
    Avatar de Etanne
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2003
    Messages
    469
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 469
    Par défaut
    J'ai testé l'url sous IE10 et j'ai aussi le freeze mais uniquement en mode Quirks !

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 5
    Par défaut
    Citation Envoyé par DotNetMatt Voir le message
    Si tu regarde les requêtes/réponses HTTP avec Fiddler, il n'y a pas d'erreur ?
    Je regarde ça dès que je rentre et je reviens vers toi.

    Citation Envoyé par Etanne Voir le message
    J'ai testé l'url sous IE10 et j'ai aussi le freeze mais uniquement en mode Quirks !
    Oui c'est exact, par défaut le contrôle WebBrowser utilise le navigateur installé sur le système en mode Quirks, mais pour changer cela il faut ajouter une clé de registre, ce qui m'embête un peu car j'aimerai éviter d'avoir à demander aux utilisateurs (ou ajouter un manifest) pour que l'application se lance avec les droits administrateur :/ Ce qui de plus empêcherait l'application de fonctionner sur des comptes limités...

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 5
    Par défaut
    Citation Envoyé par DotNetMatt Voir le message
    Si tu regarde les requêtes/réponses HTTP avec Fiddler, il n'y a pas d'erreur ?
    Fiddler me signale une erreur 404 sur l'image /assets/img/concent_topbg.gif. J'ai parcouru le code source, et j'ai trouvé l'origine du problème dans le fichier style.css:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .widecolumn{background:url(../img/content_topbg.gif) repeat-x top;background-color:#EFEFEF;border-top:2px solid #efefef;margin:0;padding:0}
    En enregistrant le site (Fichier => Enregistrer Sous sur n'importe quel navigateur), j'ai supprimé la ligne du fichier CSS puis ouvert la page dans le WebBrowser de mon application, et là miracle, ça fonctionne ! C'est surprenant.

    Comment puis-je faire pour faire fonctionner le site maintenant que je connais l'origine du problème? Je ne suis bien sûr pas webmaster de ce site donc je ne peux pas corriger le code, et je ne peux pas non plus seulement le retirer en parsant le code avant l'affichage de la page dans le WebBrowser car si un problème de ce type se produit sur un autre site cela ne fonctionnera pas (mon application affiche plusieurs sites déterminés par l'utilisateur, je ne peux donc pas contrôler chaque site).

  6. #6
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Billets dans le blog
    3
    Par défaut
    Pas sûr que ça soit la solution puisqu'il ne s'agit pas de script, mais si tu mets la propriété ScriptErrorsSuppressed du WebBrowser à true, est-ce que ça passe ?
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 5
    Par défaut
    J'ai oublié de le mentionner dans mon premier post: mettre la propriété ScriptErrorsSuppressed à true ne change rien.

Discussions similaires

  1. Réponses: 2
    Dernier message: 05/01/2005, 16h55
  2. Arborescence des sujets sur ce site
    Par Invité dans le forum Evolutions du club
    Réponses: 2
    Dernier message: 10/11/2004, 18h32
  3. Réponses: 2
    Dernier message: 08/11/2003, 23h42
  4. Page de rapport de bug sur le site de Sun
    Par piff dans le forum Général Java
    Réponses: 1
    Dernier message: 03/03/2003, 18h12

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