Недавно добавленные исходники

•  DeLiKaTeS Tetris (Тетрис)  3 826

•  TDictionary Custom Sort  5 929

•  Fast Watermark Sources  5 731

•  3D Designer  8 520

•  Sik Screen Capture  6 071

•  Patch Maker  6 508

•  Айболит (remote control)  6 497

•  ListBox Drag & Drop  5 357

•  Доска для игры Реверси  95 080

•  Графические эффекты  6 705

•  Рисование по маске  5 849

•  Перетаскивание изображений  4 886

•  Canvas Drawing  5 255

•  Рисование Луны  4 987

•  Поворот изображения  4 530

•  Рисование стержней  3 208

•  Paint on Shape  2 450

•  Генератор кроссвордов  3 325

•  Головоломка Paletto  2 637

•  Теорема Монжа об окружностях  3 427

•  Пазл Numbrix  2 260

•  Заборы и коммивояжеры  2 924

•  Игра HIP  1 890

•  Игра Go (Го)  1 809

•  Симулятор лифта  2 147

•  Программа укладки плитки  1 869

•  Генератор лабиринта  2 316

•  Проверка числового ввода  2 002

•  HEX View  2 312

•  Физический маятник  1 967

 
скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Delphi Sources

Сохранить исходный код всех фреймов TWebBrowser



Оформил: DeeCo

uses
   ActiveX;

 function TForm1.GetFrame(FrameNo: Integer): IWebbrowser2;
 var
   OleContainer: IOleContainer;
   enum: IEnumUnknown;
   unk: IUnknown;
   Fetched: PLongint;
 begin
   while Webbrowser1.ReadyState <> READYSTATE_COMPLETE do
     Application.ProcessMessages;
   if Assigned(Webbrowser1.document) then
   begin
     Fetched := nil;
     OleContainer := Webbrowser1.Document as IOleContainer;
     OleContainer.EnumObjects(OLECONTF_EMBEDDINGS, Enum);
     Enum.Skip(FrameNo);
     Enum.Next(1, Unk, Fetched);
     Result := Unk as IWebbrowser2;
   end
   else
     Result := nil;
 end;

 // Load sample page 
// Testseite laden 
procedure TForm1.Button1Click(Sender: TObject);
 begin
   Webbrowser1.Navigate('http://www.warebizprogramming.com/tutorials/html/framesEx1.htm');
 end;

 // Save all frames in single files 
// Alle Frameseiten in einzelne Dateien speichern 
procedure TForm1.Button2Click(Sender: TObject);
 var
   IpStream: IPersistStreamInit;
   AStream: TMemoryStream;
   iw: IWebbrowser2;
   i: Integer;
   sl: TStringList;
 begin
   for i := 0 to Webbrowser1.OleObject.Document.frames.Length - 1 do
   begin
     iw := GetFrame(i);
     AStream := TMemoryStream.Create;
     try
       IpStream := iw.document as IPersistStreamInit;
       if Succeeded(IpStream.save(TStreamadapter.Create(AStream), True)) then
       begin
         AStream.Seek(0, 0);
         sl := TStringList.Create;
         sl.LoadFromStream(AStream);
         sl.SaveToFile('c:\frame' + IntToStr(i) + '.txt');
         //  memo1.Lines.LoadFromStream(AStream); 
        sl.Free;
       end;
     except
     end;
     AStream.Free;
   end;
 end;

 end.




Похожие по теме исходники

Barcode (штрих-код)

Оптимальное кодирование информации

BarCode39 (штрихкоды)

Код Хаффмана

 



Copyright © 2004-2025 "Delphi Sources" by BrokenByte Software. Delphi World FAQ

Группа ВКонтакте