用delphi访问IFRAME src指定的内网页里的内容,即子网页内容,该怎么处理

用delphi访问IFRAME src指定的内网页里的内容,即子网页内容
如题,就是读子网页里的内容。
--------------------------
如以下网页a.htm,里面简单的一个框架用到b.htm
<IFRAME src="b.htm" id="objcompentframe"></IFRAME>

1、如何取得b.htm的原码,因为我们要控制的是别的网站的页面
2、在页a.htm打开后,b.htm网页的内容当然也显示出来了,现在我想用delphi可以控制到属于b.htm里的内容,向b.html的编辑框输入内容。

------解决方案--------------------

[code=Delphi(Pascal)]
WebBrowser.oleobject.document.documentelement.document.frames.item(框架索引).document.documentElement.innerHTML
我没有测试,你试试,不知行不行

[/code]
------解决方案--------------------
function   TForm1.GetFrame(FrameNo:   Integer; WB: TWebBrowser):   IWebbrowser2;
var
  OleContainer:   IOleContainer;
  enum:   IEnumUnknown;
  unk:   IUnknown;
  Fetched:   PLongint;
begin
  while WB.ReadyState <> READYSTATE_COMPLETE do
    Application.ProcessMessages;
    
  if Assigned(WB.document)   then
  begin
    Fetched := nil;
    OleContainer := WB.Document as IOleContainer;
    OleContainer.EnumObjects(OLECONTF_EMBEDDINGS, enum);
    Enum.Skip(FrameNo);
    Enum.Next(OLECONTF_EMBEDDINGS, Unk, Fetched);
    Result := Unk as IWebbrowser2;
  end
  else
    Result := nil;
end;


function GetWebPage(const Url: string): AnsiString;
var
  Session,
  HttpFile: HINTERNET;
  szSizeBuffer: Pointer;
  dwLengthSizeBuffer: DWord;
  dwReserved: DWord;
  dwFileSize: DWord;
  dwBytesRead:  DWord;
  Contents: PChar;
begin
  Session := InternetOpen('',0,niL,niL,0);
  HttpFile  :=  InternetOpenUrl(Session,PChar(Url),niL,0,0,0);
  dwLengthSizeBuffer  := 1024;
  while True do
  begin
    HttpQueryInfo(HttpFile,5,szSizeBuffer,dwLengthSizeBuffer,dwReserved);
    GetMem(Contents,dwFileSize);
    InternetReadFile(HttpFile,Contents,dwFileSize,dwBytesRead);
    if dwBytesRead = 0 then
      Break
    else
      Result := Result + Contents;
  end;

  InternetCloseHandle(HttpFile);
  InternetCloseHandle(Session);
  FreeMem(Contents);
end;


试试这个
------解决方案--------------------
这个要具体网页具体分析。控制多个ifram是我的强项。

取一个包含在<IFRAME>标签内的网页源码:
showmessage(Wb1.oleobject.document.documentelement.document.frames.item(0).Document.body.innerHTML)