das hier wäre ja die Funktion:
function GetIMyService(UseWSDL: Boolean=System.False; Addr: string=''; HTTPRIO: THTTPRIO = nil): IMyService;
heißt ich müsst (system.false;192.168.x.y; nil) übergeben oder?:/
Ja, dass stimmt fast. Du kannst die Funktion verwenden wie sie ist, dann musst ud aber bei Addr -> "http://192.168.x.y:8080/
wsdl/IMyService" übergeben (Vorausgesetzt: Du willst
wsdl & der Port ist 8080.
Ich dachte mehr an sowas:
Delphi-Quellcode:
const
defWSDL = '
http://%s:%d/wsdl/IMyService';
defURL = '
http://%s:%d/soap/IMyService';
defSvc = '
IMyServiceservice';
defPrt = '
IMyServicePort';
function GetFullAdress(UseWSDL: Boolean; IPAdress:
string; Port: Word):
string;
begin
if UseWSDL
then result := defWSDL
else result := defURL;
result := Format(result, [IPAdress, Port]);
end;
function GetIMyService(UseWSDL: Boolean; IPAdress:
string; Port: Word; HTTPRIO: THTTPRIO): IMyService;
begin
result := GetIMyService(UseWSDL, GetFullAdress(UseWSDL, IPAdress, Port), HTTPRIO);
end;
function GetIMyService(UseWSDL: Boolean; Addr:
string; HTTPRIO: THTTPRIO): IMyService;
var
RIO: THTTPRIO;
begin
Result :=
nil;
if (Addr = '
')
then
begin
Addr := GetFullAdress(UseWSDL, '
localhost', 8080);
//if UseWSDL then
// Addr := defWSDL
//else
// Addr := defURL;
end;
if HTTPRIO =
nil then
RIO := THTTPRIO.Create(
nil)
else
RIO := HTTPRIO;
try
Result := (RIO
as IMyService);
if UseWSDL
then
begin
RIO.WSDLLocation := Addr;
RIO.Service := defSvc;
RIO.Port := defPrt;
end else
RIO.URL := Addr;
finally
if (Result =
nil)
and (HTTPRIO =
nil)
then
RIO.Free;
end;
end;
Und wenn das funktionieren würde, den server und client auf einem rechner laufen zu lassen und mich mit einem zweiten Rechner mit der oben genannten Funktion zu verbinden, dann hab ich ja trotzdem noch keine Möglichkeit einzusehen, was Rechner 1 geschickt hat oder doch?
Das hängt vom Server ab. Du könntest entsprechende Funktionen etc. ja dort implementieren für die Clients.
Aber evtl. solltest du dein Problem nochmals etwas genauer beschreiben - also was möchtest du wirklich umsetzen?
Gruß, Chris