Hallo,
ich habe mir ausm internet (
dsdt.info) hier die sachen rausgesucht, die ich benötige:
unzwar soll dieses programm sozusagen als proxy (zusammen mit einem script auf einem server) funktionieren.
der server ist im moment nur zu testzwecken nicht kommerziell.
Allerdings bekomme ich nie etwas zurückgeliefert vom script, an das ich die daten sende.
Wenn man aber manuell an das script den befehlt sendet z.b. so:
TEST dann funktioniert das.
wo ist der fehler ?
wäre für eure hilfe sehr dankbar
Delphi-Quellcode:
procedure WB_LoadHTML(WebBrowser: TWebBrowser; HTMLCode:
string);
var
sl: TStringList;
ms: TMemoryStream;
begin
WebBrowser.Navigate('
about:blank');
while WebBrowser.ReadyState < READYSTATE_INTERACTIVE
do
Application.ProcessMessages;
if Assigned(WebBrowser.Document)
then
begin
sl := TStringList.Create;
try
ms := TMemoryStream.Create;
try
sl.Text := HTMLCode;
sl.SaveToStream(ms);
ms.Seek(0, 0);
(WebBrowser.Document
as IPersistStreamInit).Load(TStreamAdapter.Create(ms));
finally
ms.Free;
end;
finally
sl.Free;
end;
end;
end;
function SendPostData(Ahttp: TIdHTTP;
const AtoURL:
String;
const aParams: TStrings):
String;
//Ahttp: Die HTTP Komponente von Indy 8.0 bzw. 9.0
//AtoURL: An diese URL werden die Informationen gesendet
//Result: HTML-Ergebnis (Antwort des Scripts)
Var
lStream: TMemoryStream;
//HTML-Result des PHP-Scripts
lParams: TStringStream;
I: Integer;
begin
Result:='
';
if not Assigned(aHttp)
then
exit;
lStream := TMemoryStream.create;
lParams := TStringStream.create('
');
try
AHTTP.Request.ContentType := '
application/x-www-form-urlencoded';
//Dieser Stream wird letztendlich gesendet
//Stream mit Werten füllen
for I:=0
to aParams.Count-1
do
lParams.WriteString(aParams[I] + '
&');
try
//Stream an das PHP-Script senden
AHTTP.Post(AtoURL,
lParams,
lStream);
except
on E:
Exception do
showmessage('
Fehler bei der Übertragung: ' + E.
Message);
end;
SetLength(Result,lStream.Size);
lStream.Position:=0;
lStream.ReadBuffer(Result[1],lStream.Size);
finally
lParams.Free;
lStream.Free;
end;
end;
procedure TForm1.suche_btClick(Sender: TObject);
var
sList: TStringlist;
begin
sList:=TStringList.Create;
try
sList.Add('
url=http://www.'+
url.text);
WB_loadhtml(Webbrowser1, SendPostData(idHttp1,'
http://hermei4.100webspace.net/index.php',sList));
finally
sList.Free;
end;
end;