TWebBrowser - create a page screenshot



  • hello

    iam trying to get a screenshot of an webpage (to save a webpage as image), i done this in delphi, but have problems to do it in Borlan C++

    what am i doing wrong?

    thanks

    IViewObject *viewObject;
    WebBrowser1->Document->QueryInterface(IID_IViewObject, (LPVOID*)&viewObject);
    
    RECTL *rectangle = &RECTL();
    rectangle->left = 0;
    rectangle->top = 0;
    rectangle->right = 200;
    rectangle->bottom = 200;
    
    viewObject->Draw(DVASPECT_CONTENT, 1,  NULL, NULL, NULL, Image1->Canvas->Handle, rectangle, NULL, NULL, NULL);
    


  • achh schuldigung ich hab vergessen das dies ein deutches forum is.... sorry, antworten konnen naturlich deutch sein



  • Hallo

    Fehlerbeschreibung?!

    Ich halte diese Zeile für fehlerhaft.

    RECTL *rectangle = &RECTL();
    

    Die Instanz von RECTL ist nur temporär, der Zeiger zeigt nach dieser Zeile auf ungültigen Speicher. Warum so kompliziert?

    RECTL rectangle; // Normale Stack-Instanz reicht aus
    rectangle.left = 0;
    rectangle.top = 0;
    rectangle.right = 200;
    rectangle.bottom = 200;
    
    viewObject->Draw(DVASPECT_CONTENT, 1,  NULL, NULL, NULL, Image1->Canvas->Handle, &rectangle, NULL, NULL, NULL); // Hier brauchst du die Adresse
    

    bis bald
    akari


Anmelden zum Antworten