Hello Lutz,

Just write as always but you have a typical code that need to be
executed in a separate object. So let the object behave as a normal
ojbect. Later it is also very easy to use the thing in other
applications. And you can use the normal async methods.

unit uJob

type
  TJobResult = procedure(Sender: TObject; const TheResult: string) of
object;
  TJob = class
  private
    FCli: THTTPCli;
    FOnResult: TJobResult;
    procedure TriggerResult(const TheResult: string);
  public
    procedure GetResult;
    property OnResult: TJobResult read FOnResult write FOnResult;
  end;

---
Rgds, Wilfried [TeamICS]
http://www.overbyte.be/eng/overbyte/teamics.html
http://www.mestdagh.biz

Thursday, November 3, 2005, 03:26, Lutz Schröer wrote:

> Hi,

> I've got a small design problem with the GetAsync method. My basic 
> understanding is that after I called the getAsync method I have to do 
> the further processing in httpRequestDone. This is no problem until I 
> want to put the code in a different unit. For example:

> unit1.pas:
> ----------
> function xxx.getResult(): string;
> begin
>    http.getAsync;
> end;

> procedure xxx.httpRequestDone(Sender: TObject; RqType: THttpRequest;
>   ErrCode: Word);
> begin
>   // do some result processing
> end;


> main.pas:
> ----------
> [...]
> result := unit1.getResult();
> [...]

> Obviously this can't work. How do I have to design my unit so that I 
> create a nice and simple function call in my main program but the actual
> code resides in a different unit?

> Cheers
> Lutz




-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be

Reply via email to