Como pegar uma imagem do TWebbrowser de uma forma diferente
Preciso pegar uma imagem do TWebbrowser. Vi algumas dicas aqui no forum para utilizar dois Webbrowser para pegar as imagens. As imagens que estou citando são dá tecnologica anti-robo. Queria saber se alguém já consegui pegar uma imagens específica do Webbrowser já carregado.
Dá para pegar uma Interface do Document do Webbrowser para saber os dados da imagem esta Interface é do tipo IDispatch, quando eu tento converter a imagem para IPictureDisp ele me retorna um erro de Interface not Supported.
Se alguém conseguiu fazer de uma forma diferente sem utilizar dois Webbrowser ou sem utilizar a forma com descrevi acima e quiser compartilhar ficarei muito grato.
Dá para pegar uma Interface do Document do Webbrowser para saber os dados da imagem esta Interface é do tipo IDispatch, quando eu tento converter a imagem para IPictureDisp ele me retorna um erro de Interface not Supported.
var
document : IHTMLDocument2Disp;
picture : IPicture;
picDisp : IPictureDisp;
begin
WebBrowser1.Document.QueryInterface(IHTMLDocument2Disp, document);
(document.Images.Item(0, 0) as IHTMLImgElement).QueryInterface(IPictureDisp, picDisp);
if (picDisp = nil) then
picDisp := document.images.item(0, 0) as IPictureDisp;
try
imagePic := TPicture.Create;
SetOlePicture(imagePic, IPictureDisp(document.images.item(0, 0)));
imagePic.SaveToFile('C:\Documents and Settings\sistemas\Desktop\Teste Portal\captchaIPictureDisp.gif');
Image1.Picture.Assign(imagePic);
except
on e : Exception do
ShowMessage(e.Message);
end;
end;
Se alguém conseguiu fazer de uma forma diferente sem utilizar dois Webbrowser ou sem utilizar a forma com descrevi acima e quiser compartilhar ficarei muito grato.
Fernando Santos
Curtidas 0