Cum se afișează informații (html) în webbrowser din accesul la baza de date

Cum se afișează informații (HTML) în WebBrowser din Access DB

Mai exact, întrebarea:
1) accesul la Access DB (forum de baze de date)
2) lucrați cu scripturile WebBrowser și CGI-BIN (IMHO) - dacă nu doriți să creați un fișier (forum NETWORK)







Consultați metodele de interfață WebBrowser.Document
De exemplu - writeln

Cine te oprește? Citiți informațiile din câmpul blob (imaginea fișierului este probabil în continuare * .htm) și setați WebBrowser-ul pe această imagine.

Numai pentru ceea ce ar avea acces la WebBrowser.Document (IHTMLDocumnet (2)), proinitsializuruyte WebBrowser aproximativ după cum urmează (în termeni vb - Delphi nu este necesar):

WebBrowser.Navigate ("despre: gol")
roată (nu WebBrowser.ReadyState <> READYSTATE_COMPLETE)
dormi 100
doevents "în cazul D - Application.ProcessMessage
merge încet

În răspunsul precedent la roată nu, desigur, la nimic. )))

Aici scrieți:
Cine te oprește? Citiți informațiile din câmpul blob (imaginea fișierului este probabil în continuare * .htm) și setați WebBrowser-ul pe această imagine.

Aș vrea cu adevărat acest lucru, dar nu știu cum să o fac
Cum să direcționez firul pe care l-am citit în câmpul meu BLOB, în mine
WEBBrouser.

Aici este procedura mea care citește câmpul și scrie informații într-un fișier. Acest fișier este atunci, pot atribui proprietatea Navigate. Așa că nu am probleme. Dar am nevoie de ea fără dosar, dar imediat. Dar cum.

Se numește simplu: WriteFromFieldToFile (câmpul din baza de date);

Spune-mi mai multe detalii. Cum fac asta?






Dacă nu este dificil, dați codul sursă, ca și al meu.

Această soluție de acolo

Întrebare: Cum să descărcați date streaming în WebBrowser fără a recurge la deschiderea unui fișier?

Răspuns: Iată un exemplu de cod:

funcția TForm1.LoadFromStream (const AStream: TStream): HRESULT;
începe
AStream.seek (0, 0);
Rezultat: = (WebBrowser1.Document ca
IPersistStreamInit) .Load (TStreamAdapter.Create (AStream));
se încheie;

Slavă Domnului, există zdwigi, dar! ca întotdeauna ceva este în neregulă. De data asta, asta-i tot. Am descarcat procedura pe care mi-ai dat-o, fluxul meu. WEBBuserul a acceptat-o. Dar, problema este că WEBbr. le afișează ca TEXT. și nu ca un grafic.
Nu unul atât de diferit. ) Cum le afișez în mod corespunzător acum?
Iată procedura mea care face asta


procedura TForm1.KeyStoreClick (expeditor: TObject);
var
Stream: TStream;
începe
cu Query1 nu
începe
Stream: = (FieldByName ( "DataBlob") DataSet ca TCustomADODataSet.) .CreateBlobStream (FieldByName ( "DataBlob"), bmRead);
WebBrowser1.Navigate ("despre: Blank");
LoadFromStream (flux);
se încheie;

După aceasta, browserul meu afișează informații ca text. De ce.
Apropo, mulțumesc pentru legătură.
Cu sărbătoarea.

Sunt schimburi. Dar, ca întotdeauna, există întotdeauna o problemă. De data asta. Browserul meu, fluxul înghite. Dar afișează informațiile ca text HTML. Și nu ca de obicei, în program, așa cum ar trebui. De ce.

Iată procedura mea care citește câmpul BLOB.

procedura TForm1.KeyStoreClick (expeditor: TObject);
var
Stream: TStream;
începe
cu Query1 nu
începe
Stream: = (FieldByName ( "DataBlob") DataSet ca TCustomADODataSet.) .CreateBlobStream (FieldByName ( "DataBlob"), bmRead);
WebBrowser1.Navigate ("despre: Blank");
LoadFromStream (flux);
se încheie;
Stream.Free;
se încheie;

După aceasta, WebBrowser - afișează textul ca TEXT. Ce este greșit de data asta.
Apropo, mulțumesc pentru legătură.
Cu sărbătoarea.

Încercați să modificați LoadFromStream dat astfel:

WebBrowser1.Document ca
IPersistStreamInit) .InitNew ();

(WebBrowser1.Document ca
IPersistStreamInit).

(cel puțin în MSDN se sugerează acest lucru)

Dacă acest lucru nu funcționează, transformați fluxul într-un șir și utilizați-l
metoda write sau writeln. WebBrowser1.Document







Articole similare

Trimiteți-le prietenilor: