Jak zrobić w edytorze html przeglądanie [email protected]
TWebBrowser wrzuć ale wcześniej go z Activexów wyteguj
albo niech sie uruchamia domyslna przegladarka poprzez ShellExecute :-D
Ktos: twój pomysł jest lepszy!
Nie jesteś uzależniony od monopoli$ty kochanego
Najlepiej będzie, jeśli dasz TWebBrowser!!!!!!!!!!!! ;P
nikt o tym nie napisał :( :
zpisz najpierw HTML'a do pliku tekstowego z rozszeżeniem .html ;) w tempach -jako temp ;) np.; tmpfile_moj_edytor.html i dopiero ten plik otwórz w przeglądarce ;)
miło że to dopisałeś, bo nikt rzeczywiście o tym nie wspomniał :)
Znalazłem - nie pamiętam już gdzie, wykorzystałem na pewno - nie pamiętam do czego, ale może się przydać
procedure ieLoadFromStream(anIE: TWebBrowser; aStm: TStream);
const
IID_IPersistStreamInit: TGUID = '{7FD52380-4E07-101B-AE2D-08002B2EC713}';
var
iLen: Integer;
hContent: HGLOBAL;
hr: HRESULT;
iStm: IStream;
pHtmlDoc: IDispatch;
pPersistStreamInit: IPersistStreamInit;
begin
iLen := aStm.Size; if iLen = 0 then Exit;
hContent := GlobalAlloc(GPTR, iLen + 1);
if hContent 0 then // success
begin
aStm.Seek(0, soFromBeginning);
aStm.Read(Pointer(hContent)^, iLen);
hr := CreateStreamOnHGlobal(hContent, True, iStm);
if hr = 0 then // success
begin
pHtmlDoc := anIE.DefaultInterface.Document;
if pHtmlDoc nil then
begin
hr := pHtmlDoc.QueryInterface(IID_IPersistStreamInit, pPersistStreamInit);
if hr = 0 then // success
begin
hr := pPersistStreamInit.InitNew();
if hr = 0 then // success
hr := pPersistStreamInit.Load(iStm);
end;
end;
end;
end;
end;
procedure ieLoadFromString(anIE: TWebBrowser; aStr: String);
var
stm: TStream;
begin
stm := TStringStream.Create(aStr);
ieLoadFromStream(anIE, stm);
stm.Free;
end;
Call me Jarry
miło że to dopisałeś, bo nikt rzeczywiście o tym nie wspomniał :)
A jeśli chodzi o TWebBrowser to on wykorzystuje wlasnie IE, dlatego monopoli$ta ;-) Microsoft i tak ma radochę