Solved

How can i read Frame content with TWebBrowser?

Posted on 2007-11-20
6
1,326 Views
Last Modified: 2012-06-27
Hello

im making a software for my company and i need to read the frame content (wich are from other domains) and assign them to a var. Im using TWebBrowser component since it interpret js code, but im getting "access is denied" error due to cross domain security. How can i bypass it? and if its not possible is there any component wich will allow me to read the frame content (the component MUST execute js code).

Thanks a lot.

Elias
procedure TForm1.Button1Click(Sender: TObject); 
var
  i: integer; 
begin 
  for i := 0 to (WebBrowser1.OleObject.Document.frames.Length - 1) do 
    if WebBrowser1.OleObject.Document.frames.item(i).document.queryCommandEnabled('Copy') then 
      ShowMessage('copy command is enabled for frame no.' + IntToStr(i));
end;

Open in new window

0
Comment
Question by:epagos
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
6 Comments
 
LVL 14

Expert Comment

by:B_Dorsey
ID: 20322434
Is it login data from the frame window? For instance the data on the page you are trying to scrape is user login based? If not I just have my server call the frame url and grab the data via xmlhttp (ASP) or anoter way via some other server side language... if its login based, I think you are SOL.
0
 

Author Comment

by:epagos
ID: 20322894
no, its login based.
And yes i have tried to retrieve frames url through another browser request. But on this case i must get the code WITHOUT any additional requests.
0
 
LVL 10

Expert Comment

by:wildzero
ID: 20325434
You might want to check this out
http://www.experts-exchange.com/Programming/Languages/Pascal/Delphi/Q_21214157.html

It's a bit of a read, but worth it.
:-)
0
 
LVL 26

Accepted Solution

by:
EddieShipman earned 500 total points
ID: 20329233
[quote]But on this case i must get the code WITHOUT any additional requests.[/quote]
IMPOSSIBLE with security. You can use XMLHTTP but you must pass authorization info in your request.
0
 
LVL 1

Expert Comment

by:Computer101
ID: 21066695
Forced accept.

Computer101
EE Admin
0

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

If you are a web developer, you would be aware of the <iframe> tag in HTML. The <iframe> stands for inline frame and is used to embed another document within the current HTML document. The embedded document could be even another website.
Boost your ability to deliver ambitious and competitive web apps by choosing the right JavaScript framework to best suit your project’s needs.
This Micro Tutorial will demonstrate how to add subdomains to your content reports. This can be very importing in having a site with multiple subdomains.
How to create a custom search shortcut to site-search Experts Exchange using Google in the Firefox browser. This eliminates the need to type out site:experts-exchange.com whenever you want to search the site. Launch your Bookmark Menu: Press 'Ctrl +…

726 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question