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

VB.NET Discussion :

Besoin d'aide pour recherche de texte dans WebBrowser


Sujet :

VB.NET

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2012
    Messages : 7
    Points : 0
    Points
    0
    Par défaut Besoin d'aide pour recherche de texte dans WebBrowser
    Bonjour, j'essaie de faire une appli de recherche de texte dans un Web browser.
    Jusqu'ici tout va bien, les problèmes interviennent au niveau des résultats.
    j'obtient :
    L'exception System.Runtime.InteropServices.COMException s'est produite
    ErrorCode=-2146827682
    HResult=-2146827682
    Message=Exception de HRESULT : 0x800A025E
    InnerException:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Public Function FindNext(ByVal text As String, ByVal webBrowser1 As WebBrowser) As Boolean
            Dim doc As IHTMLDocument2 = CType(Form1.WebBrowser1.Document.DomDocument, IHTMLDocument2)
            Dim sel As IHTMLSelectionObject = doc.selection
            Dim rng As IHTMLTxtRange = CType(sel.createRange, IHTMLTxtRange)
            rng.collapse(False)
            If rng.findText(text, 1000000, 0) Then
                rng.select() 'Le code qui bloque
                Return True 
            Else
                FindFirst(text, Form1.WebBrowser1)
            End If
            Return False
        End Function
    Merci par avance pour votre aide
    J'utilise vb.net dans visual studio 2013 avec net framework 4.5

    Cordialement

  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 : 36
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Points : 9 743
    Points
    9 743
    Billets dans le blog
    3
    Par défaut
    Quelle est la ligne qui lève cette exception ?

    Y'a-t-il une InnerException ? Si oui quel est le message ?
    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
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2012
    Messages : 7
    Points : 0
    Points
    0
    Par défaut
    Citation Envoyé par DotNetMatt Voir le message
    Quelle est la ligne qui lève cette exception ?

    Y'a-t-il une InnerException ? Si oui quel est le message ?
    Bonjour, c'est la ligne 7 qui lève l'exception et non il n'y a pas d'InneException, la seule chose que j'obtiens est :

    L'exception System.Runtime.InteropServices.COMException s'est produite
    ErrorCode=-2146827682
    HResult=-2146827682
    Message=Exception de HRESULT : 0x800A025E
    InnerException:
    c'est tout

  4. #4
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 904
    Points : 10 168
    Points
    10 168
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    Désolé que ton numéro d'erreur n'y soit pas; mais cette page m'a déjà sauvé la mise:

    https://support.microsoft.com/en-us/...?wa=wsignin1.0

    Peut-être qu'une autre fois...
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

  5. #5
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2012
    Messages : 7
    Points : 0
    Points
    0
    Par défaut
    Citation Envoyé par clementmarcotte Voir le message
    Bonjour,

    Désolé que ton numéro d'erreur n'y soit pas; mais cette page m'a déjà sauvé la mise:

    https://support.microsoft.com/en-us/...?wa=wsignin1.0

    Peut-être qu'une autre fois...
    Merci pour l'info ça pourrait m'être utile une prochaine fois

  6. #6
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 904
    Points : 10 168
    Points
    10 168
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    Une idée en l'air et jamais essayée. Puisque le WebBrowser a une propriété DocumentText de type String. Tu pourrais essayer de récupérer le texte dans une variable string que tu pourrais "écumer" avec String.contains, String.indexOf etc. ou des expressions régulières. Tant que ce n'est pas un bug du Framework ou du WebBrowser, tu as peut-être une piste pour une solution de contournement.

    Mais je rappelle que c'est sans garantie
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

  7. #7
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2012
    Messages : 7
    Points : 0
    Points
    0
    Par défaut
    Nom : Sans titre.png
Affichages : 402
Taille : 117,1 Ko
    J'ai remarqué quelque chose, en essayant mon programme. Pour le test j'ai tenté de rechercher google sur la page. J'obtiens l'erreur au niveau du 1er résultat en rouge sur l'image. J'ai essayé de sélectionner manuellement le 2e encadré en rouge, même problème. Le 3e en rouge même problème. Ensuite j'ai essayé un résultat en vert et la bizarre aucun problème.

    Voici mon application pour que vous puissiez comprendre https://mega.co.nz/#!VhcVga7K!LSJX8j...bRyXMx3p_D8dlU

    Citation Envoyé par clementmarcotte Voir le message
    Bonjour,

    Une idée en l'air et jamais essayée. Puisque le WebBrowser a une propriété DocumentText de type String. Tu pourrais essayer de récupérer le texte dans une variable string que tu pourrais "écumer" avec String.contains, String.indexOf etc. ou des expressions régulières. Tant que ce n'est pas un bug du Framework ou du WebBrowser, tu as peut-être une piste pour une solution de contournement.

    Mais je rappelle que c'est sans garantie
    J'avais essayé avec les expression régulières avec quelque chose comme

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     WebBrowser1.Document.Body.InnerHtml.Replace(TxtRecherche.Text, "<span style=""background-color:red"">" & TxtRecherche.Text & "</span>")
    qui coloré en rouge les résultats, mais ça devenais vite incompréhensible car certain résultat étaient dans les lien ...

  8. #8
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 904
    Points : 10 168
    Points
    10 168
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    J'ai téléchargé l'application chez-moi, je l'ai lancée, j'ai cherché Google, j'ai cliqué Google Actualités, et cela fonctionne sans problème. Rendu là, je sèche. Désolé. Faudrait probablement d'autres volontaires pour tester sur d'autres machines et peut-être d'autres configurations.


    Si cela peut aider, j'utilise: Windows 7 sp1, 64 bits, à jour de ce matin et IE11.

    Au cas où ce serait "un coup fourré" de l'anti-virus ou du pare-feu, j'utilise Microsoft Security Essentials.

    Quand j'utilisais Avast, il me faisait parfois des tours pendables avec mes programmes, sans toujours avertir que c'était lui qui abusait de ma patience.

    En passant, autre chose qui m'est déjà arrivée :

    Une anodine boucle for passait bien dans VB en mode programmation, mais qui plantait joyeusement en mode compilé:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for i = 1 to quelque chose
        traitement
    next
    Il lui fallait mordicus next i pour que l'exécutable autonome fonctionne.
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

  9. #9
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2012
    Messages : 7
    Points : 0
    Points
    0
    Par défaut
    Je pense que je me suis mal expliqué, tu as rechercher google dans le moteur de google, ensuite tu as appuyé sur ctrl + F puis utilisé ma fonction de recherche?

  10. #10
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 904
    Points : 10 168
    Points
    10 168
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    Citation Envoyé par EntreNousNetwork Voir le message
    Je pense que je me suis mal expliqué, tu as rechercher google dans le moteur de google, ensuite tu as appuyé sur ctrl + F puis utilisé ma fonction de recherche?
    Quand je passe par Ctrl+F, la fenêtre de recherche s'affiche, mais il ne recherche rien, peu importe ce que je mets dans la fenêtre.
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

  11. #11
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2012
    Messages : 7
    Points : 0
    Points
    0
    Par défaut
    Citation Envoyé par clementmarcotte Voir le message
    Bonjour,



    Quand je passe par Ctrl+F, la fenêtre de recherche s'affiche, mais il ne recherche rien, peu importe ce que je mets dans la fenêtre.
    À ok carêment, Ba je pense que je vais oublier mon programme et rester dans la recherche conventionnelle.Merci quand même pour ton aide.

Discussions similaires

  1. Besoin d'aide pour afficher une image dans un applet
    Par argon dans le forum AWT/Swing
    Réponses: 16
    Dernier message: 19/01/2006, 19h45
  2. Besoin d'aide pour afficher du text dans un applet
    Par argon dans le forum Applets
    Réponses: 2
    Dernier message: 15/01/2006, 21h53
  3. Réponses: 3
    Dernier message: 05/12/2005, 02h30
  4. besoin d'aide pour intégrer une entité dans un MCD
    Par barkleyfr dans le forum Schéma
    Réponses: 17
    Dernier message: 13/10/2005, 13h29

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