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

Web & réseau Delphi Discussion :

Question html et Frame


Sujet :

Web & réseau Delphi

  1. #1
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Mai 2008
    Messages
    30
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2008
    Messages : 30
    Points : 21
    Points
    21
    Par défaut Question html et Frame
    Bonjour,
    je recupère les frames d'un page web, avec une fonction je récupère le code source de toutes les frames de ma page, je modifie le code qui m'interesse dans les frames et je reinjecte dans la page.
    Mon probleme est de reinjecter le code dans la page
    Ma page web à pour code juste le nom des frames, et moi je renvoie le code de la page avec tous le contenu des frames donc ça passe pas logique .
    Est ce que quelqu'un voit comment il faudrait que je fasse pour reinjecter le code de ma page pour que du coup elle s'affiche avec le code modifier
    Merci bcp

  2. #2
    Membre émérite
    Avatar de ALWEBER
    Homme Profil pro
    Expert Delphi
    Inscrit en
    Mars 2006
    Messages
    1 511
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Expert Delphi

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 511
    Points : 2 783
    Points
    2 783
    Billets dans le blog
    10
    Par défaut
    J'ai éventuellement des réponses à ta demande. Mais c'est relativement complexe. Comment récupère tu les frames. Est ce avec une fonction du type
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WebBrowser1.OleObject.Document.body.outerHTML

  3. #3
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Mai 2008
    Messages
    30
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2008
    Messages : 30
    Points : 21
    Points
    21
    Par défaut
    Non c'est plusieurs fonction que j'ai qui me renvoi le code html des frames
    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
     
    function GetFrameSource(WebDoc: iHTMLDocument2): string;
    //returns frame HTML and scripts as a text string
    var       re: integer;
              HTMLel : iHTMLElement;
              HTMLcol : iHTMLElementCollection;
              HTMLlen : Integer;
              //ScriptEL : IHTMLScriptElement;
    begin
         result := '';
        HTMLcol := WebDoc.Get_all;
         HTMLlen := HTMLcol.length;
         for re := 0 to HTMLlen - 1 do
             begin
                  HTMLel := HTMLcol.item(re,0) as iHTMLElement;
                  if HTMLEl.tagName = 'HTML' then
                     result := result + HTMLEl.outerHTML;
             end;
    end;
     
     
    function GetBrowserForFrame(Doc:IHTMLDocument2;nFrame:integer):IWebBrowser2;
    //returns an interface to the frame's browser
    var        pContainer:IOLEContainer;
               enumerator:IEnumUnknown;
               nFetched: PLongInt;
               unkFrame: IUnknown;
    begin
         result:=nil;
         nFetched:=nil;
         //Cast the page as an OLE container
         pContainer := Doc as IOleContainer;
         //Get an enumerator for the frames on the page
         pContainer.EnumObjects(OLECONTF_EMBEDDINGS,enumerator);
         //Now skip to the frame we're interested in
         enumerator.skip(nFrame);
         //and get the frame as IUnknown
         enumerator.next(1,unkFrame,nFetched);
         //Now QI the frame for a WebBrowser Interface - I'm not
         //entirely
         //sure this is necessary, but COM never ceases to surprise me
         unkframe.QueryInterface(IID_IWebBrowser2,result);
    end;
     
     
    function GetSource : string;
    //return the source for all frames in the browser
    var         Webdoc, HTMLDoc : ihtmldocument2;
                framesCol : iHTMLFramesCollection2;
                FramesLen : integer;
                pickFrame : olevariant;
                p: integer;
    begin
         try
            WebDoc := WebBrowser1.Document as IHTMLDocument2;
            result := GetFrameSource(WebDoc);
            //Handle multiple or single frames
            FramesCol := WebDoc.Get_frames;
            FramesLen := FramesCol.Get_length;
            if FramesLen > 0 then
               for p := 0 to FramesLen-1 do
                     begin
                        pickframe := p;
                        HTMLDoc := Webbrowser1.Document as iHTMLDocument2;
                        WebDoc := GetBrowserForFrame(HTMLDoc, 1).document as iHTMLDocument2;
                                if WebDoc <> nil then
                                   result := result + GetFrameSource(WebDoc);
     
                     end;
         except
            result := 'No Source Available';
         end;
    end;

Discussions similaires

  1. petite question sur les Frame
    Par kaninama dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 06/03/2007, 19h53
  2. Question sur un Frame.hide()
    Par legillou dans le forum AWT/Swing
    Réponses: 9
    Dernier message: 12/05/2006, 15h29
  3. [HTML] technologie frame
    Par joe206 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 08/05/2006, 22h32
  4. simple question sur du html avec frames
    Par Thordax dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 03/05/2006, 12h48
  5. HTML: Balise <FRAME>, problème de syntaxe :-(
    Par mauriiice dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 16/01/2006, 02h16

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