Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    32

    [2005] WebBrowser e Frame

    Salve a tutti, vi pongo un quesito interessante...

    Sono mesi e mesi che lavoro con VB, WebBrowser e DOM, prima con il VB6 e ora con il VB2005, però ora mi trovo in una situazione strana che non so spiegarmi e spero che voi riusciate a darmi una mano...

    Questo è il mio problema: devo riempire un campo di ricerca in una pagina web e cliccare sul tasto ricerca. Nessun problema, facile come bere un bicchier d'acqua! Il problema si pone quando la pagina è composta da frame... ho 2 frame e nel secondo è presente il campo di ricerca.

    Accedendo alla proprietà InnerText funziona tutto bene:
    codice:
    WebBrowser1.Document.Window.Frames(0).Document.Body.InnerText
    Un bel problema però è accedere ai form del frame:
    codice:
    WebBrowser1.Document.Window.Frames(1).Document.Forms.Count
    Questo pezzo di codice dovrebbe dirmi quanti form sono presenti nella pagina, però stranamente ricevo una eccezione UnauthorizedAccessException che mi sta facendo diventare pazzo. Non riesco a capire come mai non sono autorizzato ad accedere alla collezione di Form presenti in un frame se posso accedere alla stessa proprietà delle pagine senza frame, dove cioè basta scrivere:
    codice:
    WebBrowser1.Document.Forms.Count
    ...che funziona senza problemi.

    Qualcuno potrebbe gentilmente aiutarmi? Sono un po' di giorni che sono bloccato a questo punto. Certo potrei aggirare il problema prendendo l'url del secondo frame e farlo caricare nel WebBrowser, in modo da trovarmi con un pagina che sono sicuro funzioni, tuttavia la soluzione più elegante è farlo direttamente nel frame, inoltre questa cosa mi rode e vorrei capire dove sta l'inghippo, quindi per favore un piccolo aiutino mi farebbe comodo

    Grazie per l'attenzione
    “There are only 10 types of people in the world: those who understand binary and those who don't”
    "...now we just have to find the other 1000"

  2. #2
    ti lascio il piacere e l' onore di leggerti il blog di Colin Neller

    http://www.colinneller.com/blog/Perm...15665bc5d.aspx

    troverai le risposte ai tuoi dilemmi

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    32
    Originariamente inviato da raffaeu
    ti lascio il piacere e l' onore di leggerti il blog di Colin Neller

    http://www.colinneller.com/blog/Perm...15665bc5d.aspx

    troverai le risposte ai tuoi dilemmi
    Ho cercato in lungo ed in largo ma non ho trovato niente che interessi il mio specifico caso...
    “There are only 10 types of people in the world: those who understand binary and those who don't”
    "...now we just have to find the other 1000"

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    32
    Finalmente ho scoperto qualcosa.

    Questa è una patch di sicurezza introdotta da microsoft un paio di anni fa, questo è il link all'articolo. Questa protezione si attiva quando nei frame sono presenti domini diversi da quello principale
    Qui e qui sono spiegati due metodi per risolvere la faccenda ma non sono in VB 2005 e io non so tradurli. Qualcuno potrebbe darmi una mano a tradurli in VB 2005?

    Sennò ci sarebbe un'altra soluzione, ma non voglio adottarla: rimpiazzare il file mshtml.dll con una versione vecchia presa per esempio da un cd di windows 98. Non voglio farlo per due ovvie ragioni:
    1. Con questo rimpiazzerei un file nuovo con uno vecchio, quindi sicuramente meno aggiornato in tutto
    2. Forzerei chiunque comprasse il mio programma ad inastallarsi una dll vecchia.

    Pensavo che avrei potuto prendere l'url del frame e aprirlo a parte, ma non mi lascia fare nemmeno questo

    Se qualcuno può aiutarmi per piacere, mi fareste un grandissimo favore!
    “There are only 10 types of people in the world: those who understand binary and those who don't”
    "...now we just have to find the other 1000"

  5. #5
    Scusa ma vuoi tradurre il codice dei link da C# a VB?

  6. #6
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    32
    Originariamente inviato da raffaeu
    Scusa ma vuoi tradurre il codice dei link da C# a VB?
    Io vorrei accedere al frame bloccato a causa di questa patch... SE è possibile tradurre quel codice in VB sì vorrei farlo, però non ne sono capace (di C# non ne capisco assolutamente niente) quindi cerco aiuto per farlo (o magari un'altra soluzione, purchè il fine sia di accedere al frame)
    “There are only 10 types of people in the world: those who understand binary and those who don't”
    "...now we just have to find the other 1000"

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.