WebBrowser w Delphi 2005

0

Jak zainstalować WebBrowsera w Delphi 2005 Personal? Na stronie Borlanda jest jakiś opis (http://www.borland.pl/cgi-bin/tip.exe/showtip?mode=1&id_tip=76), ale ja nie posiadam takiej opcje w menu Component. W helpie radzą to samo.

0

To zapytam inaczej : czy ktoś zna komponent o podobnej funkcjonalności jak WebBrowser ? Chodzi mi głównie o przejście do trybu edycji.

0

http://www.borland.pl/cgi-bin/tip.exe/showtip?mode=1&id_tip=77 z instalacją nie ma problemu ale najpierw zobacz to.

0

Zobaczyłem. I co teraz?

0
berl napisał(a)

Zobaczyłem. I co teraz?
Najpierw otworz nowy projekt packages dla win 32. następnie go zapisz i potępuje dalelej zgonie z twoją instrukcją.

0
statjacek napisał(a)

http://www.borland.pl/cgi-bin/tip.exe/showtip?mode=1&id_tip=77 z instalacją nie ma problemu ale najpierw zobacz to.

to dotyczy instalacji z plikow pas a nie ActiveX :)
http://forum.ks-ekspert.pl/index.php?showtopic=60475

0
migajek napisał(a)
statjacek napisał(a)

http://www.borland.pl/cgi-bin/tip.exe/showtip?mode=1&id_tip=77 z instalacją nie ma problemu ale najpierw zobacz to.

to dotyczy instalacji z plikow pas a nie ActiveX :)
http://forum.ks-ekspert.pl/index.php?showtopic=60475
To nie jest prawda co piszesz. Tak samo do komponentów Active X jak i do komponentów normalnych najpierw musisz utworzyć pakiet a następnie dodać do niego plik *.pas. Jest jednak problem, że w wersji d2005 personal nie ma w menu Component zakładki "Import Component". Natomiast ta zakładka jest w wersji architekt. Miałem triala tej wersji i bez problemu w ten sposób instalowałem componenty Active X. natomiast w wersji personal czy w ogÓle da się zainstalować component Active X ? Linke którą podaleś dotyczy instalowania componentów do NET a nie do win32.

0

No właśnie o to chodzi, że dla .NET udało mi się zainstalować WebBrowsera, natomiast dla win32 dalej nie jest on widoczny. W związku z tym mam jeszcze jedno pytanie - czy da się tworzyć WebBrowsera korzystając z jakiejś tam biblioteki dll, a jeśli tak to jak?

0

Czekając na jakieś sensowne rozwiązanie możliwości użycia WebBrowsera tymczasowo stosuję coś takiego:

  • Ponieważ w poprzednich wersjach PE dało się zainstalować i używać ActiveX skopiowałem ze starszej wersji plik SHDocVw.pas do katalogu z projektem.
  • W sekcji uses dołączam ten plik do projektu
  • Od tej chwili mogę w aplikacji stworzyć dynamicznie WebBrowsera:
   private:
      Browser : TWebBrowser;
procedure TForm1.FormCreate(Sender: TObject);
begin
   Browser := TWebBrowser.Create(Panel1);
   Browser.ParentWindow := Panel1.Handle;
   Browser.Navigate('http://4programers.net');
end;

Nie wiem na ile takie rozwiązanie jest zgodne z licencją Borlanda...
Nie jest to może najlepszy sposób, ale na razie nic innego nie przyszło mi do głowy, a przynajmniej coś mogę zrobić.
Z niecierpliwością czekam, aż ktoś znajdzie lepszy sposób na połączenie Delphi 2005 PE i WebBrowsera. Byłoby jednak miło, gdyby się to dało zrobić - SQLite rozwiązuje mi problem z bazą danych, a WebBrowser rozwiązałby problem z raportowaniem.

0
madmike napisał(a)

Czekając na jakieś sensowne rozwiązanie możliwości użycia WebBrowsera tymczasowo stosuję coś takiego:

  • Ponieważ w poprzednich wersjach PE dało się zainstalować i używać ActiveX skopiowałem ze starszej wersji plik SHDocVw.pas do katalogu z projektem.
  • W sekcji uses dołączam ten plik do projektu
  • Od tej chwili mogę w aplikacji stworzyć dynamicznie WebBrowsera:
   private:
      Browser : TWebBrowser;
procedure TForm1.FormCreate(Sender: TObject);
begin
   Browser := TWebBrowser.Create(Panel1);
   Browser.ParentWindow := Panel1.Handle;
   Browser.Navigate('http://4programers.net');
end;

Nie wiem na ile takie rozwiązanie jest zgodne z licencją Borlanda...
Nie jest to może najlepszy sposób, ale na razie nic innego nie przyszło mi do głowy, a przynajmniej coś mogę zrobić.
Z niecierpliwością czekam, aż ktoś znajdzie lepszy sposób na połączenie Delphi 2005 PE i WebBrowsera. Byłoby jednak miło, gdyby się to dało zrobić - SQLite rozwiązuje mi problem z bazą danych, a WebBrowser rozwiązałby problem z raportowaniem.
No tak ale tego co podałeś pliku nie ma w wresji personal D7. Myślę, że jakiś dll jest który można podłączyć tylko nie wiem jaki i jak.

0

WebBrowser jest w bibliotece C:\Windows\System32\shdocvw.dll . Niestety, do jego obsługi potrzebny jest właśnie ten plik *.pas.

HURA! Udało się zainstalować komponent! [green]

Nie mam tutaj teraz delphi 7, ale spróbuj coś takiego (albo w jakiejkolwiek starszej wersji delphi - chociaż powinno się to także udać z trialową wersją delphi 2005):

  • Wybierz Component->Import ActiveX Control
  • W okienku które się pokaże (na liście kontrolek w systemie) wybierz Microsoft Internet Control ......
  • Naciśnij klawisz Create Unit
  • W edytorze powinien się pokazać nowy unit nazwany SHDocVw_TLB.pas

To co wyżej zrobiłem to jest właśnie utworzenie komponentu dla kontrolki ActiveX.

  • Po utworzeniu pliku SHDocVw_TLB.pas zapisuję go sobie np. do katalogu Delphi 2005 PE
  • W Delphi 2005 PE wybieram File->New->Package - Delphi for win32
  • Na liście w Project Manager dodaję do pakietu plik SHDocVw_TLB.pas
  • Na pakiecie wybieram Install i wszystko się ładnie kompiluje
  • Powstaje zakładka ActiveX na której jest kilka komponentów, między innymi WebBrowser

Tylko cały czas nie wiem, jak to wygląda z punktu widzenia legalności... No w każdym razie najważniejsze, że mam WebBrowsera [green]

W sumie można by chyba wsadzić ten plik do działu komponenty z dokładnym opisem instalacji... Jako freeware? [diabel]

0

No ale ja właśnie w menu Component nie mam czegoś takiego jak Import ActiveX Control.

0
berl napisał(a)

No ale ja właśnie w menu Component nie mam czegoś takiego jak Import ActiveX Control.
No w?a?nie dlatego spos?b podany wy?ej dzia?a bez b?ednie. A ten plik pas masz przygotowa? w delphi 6 czy 7 lub nawet jeszcze starszej.

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