Zapisywanie tekstu do pliku w WebBrowser

0

Witam

dogrzebałem się do kodu:

uses 
  ActiveX, MSHTML_TLB, SHDocVw_TLB, 
  ComCtrls, OleCtrls; 

procedure TForm1.Button1Click(Sender: TObject); 
var 
  HTMLDocument: IHTMLDocument2; 
  PersistFile: IPersistFile; 
begin 
  HTMLDocument := WebBrowser1.Document as IHTMLDocument2; 
  PersistFile  := HTMLDocument as IPersistFile; 
  PersistFile.Save(StringToOleStr('c:\SavedFile.html'), System.True); 
end; 

Ale niestety działać nie chce..krzaczy się przy uses
szukałem brakujących plików,ale ani *.dcu ani *.pas nie znalazlem...

Ktoś ma jakiś pomysł ?

0

ShlObj{-to trza dodać do uses}, ActiveX, ComObj{-to też} powinno być na 100%
MSHTML_TLB, SHDocVw_TLB są z kontrolek activex, wiec powinny być, no cyba że SHDocVw_TLB zamienić na SHDocVw
OleCtrls też jest na 100% w delphi

0

duzo mi nie powiedziales..

probowalem wywalic brakujace z uses.ale wtedu naturalnie sie nie kompiluje poprawnie kod....

a jak juz nadmienilem tych plikow w DELPHI nie posiadam

MSHTML_TLB, SHDocVw_TLB,

0

Zaimportuj kontrolke activex o nazwie Microsoft HTML Object Library, poza tym dodaj do uses ShlObj i ComObj

0
  • lofixWystarczy:
    uses
    ActiveX, Mshtml;

// [browar] -lofix

0

Może moje pomoże ?
http://4programmers.net/Forum/viewpost.html?id=86101&h=oleobject
Wystarczy stringa zapisać do pliku.

0

Dobra zrob krok po kroku ok?

  1. Odpalasz sobie delphi ja to mam na Delphi5
  2. Wybierz z menu Component>Install Packages...
  3. Z listy jaka sie otworzy wybierz : Internet Explorer Components
  4. wcisnij "Remove" a nastepnie "Yes
  5. Wcisnij OK
  6. Wybierz z Menu Project->Import Type Library
  7. wybierz z listy 'Microsoft Internet Controls'
  8. Wcisnij INSTALL
  9. Z zakladki Install wybierz "Into new package"
  10. i jako Filename podaj IE55
  11. Wcisnij Ok i YES
  12. Teraz wcisnij Ok zamknij okienko i zapisz ustawienia
    tak jak przy zwyklej instalacji
  13. wybierz menu Project->Import Type Library
  14. znajdz Microsoft HTML Object Library
  15. teraz na dole masz pole typu BOX z napisem:
    create component wrapper To pole musisz odznaczyc.
  16. Wcisnij Install
  17. zainstaluj do istniejacego pliku existing package
  18. Potwierdz zmiany jak poprzednio

:) i nie marudz ze nie masz *.dcu

Pozdro

0

Oczywiście to wszystko jeśli masz wersję Personal. W wersji Enterprise po prostu usuń _TLB przy nazwach modułów - są one dostarczone z Delphi i nie trzeba ich importowac ;)

0

NIe(!) ja pisalem dla wersji ENTERPRISE

0

NIe(!) ja pisalem dla wersji ENTERPRISE

Mam Enterprise i NIGDY w zadnym projekcie nie uzywam unitów TLB ani nie potrzebowalem importować tego z ActiveX'a. Wszędzie mam po prostu ShDocView i MSHTML, BEZ _TLB...

1 użytkowników online, w tym zalogowanych: 0, gości: 1