AspObj1.pas
上传用户:fh681027
上传日期:2022-07-23
资源大小:1959k
文件大小:1k
源码类别:

Delphi控件源码

开发平台:

Delphi

  1. unit AspObj1;
  2. interface
  3. uses
  4.   ComObj, ActiveX, AspTlb, StdVcl, AspTest_TLB;
  5. type
  6.   Tasptest = class(TASPObject, IAspTest1)
  7.   protected
  8.     procedure OnEndPage; safecall;
  9.     procedure OnStartPage(const AScriptingContext: IUnknown); safecall;
  10.     procedure ShowData; safecall;
  11.     procedure ShowTable; safecall;
  12.     procedure Hello; safecall;
  13.   private
  14.     StartTime: TDateTime;
  15.   end;
  16. implementation
  17. uses ComServ, testdm, SysUtils;
  18. procedure Tasptest.Hello;
  19. var
  20.   strName: string;
  21. begin
  22.   strName := Session ['UserName'];
  23.   Response.Write ('<h3>Hello, ' + strName + '</h3>');
  24.   Response.Write ('<p>Page started at ' + TimeToStr (StartTime) + '</p>');
  25. end;
  26. procedure Tasptest.OnEndPage;
  27. begin
  28.   inherited OnEndPage;
  29. end;
  30. procedure Tasptest.OnStartPage(const AScriptingContext: IUnknown);
  31. begin
  32.   inherited OnStartPage(AScriptingContext);
  33.   StartTime := Now;
  34. end;
  35. procedure Tasptest.ShowData;
  36. begin
  37.   Response.Write ('<h3>Delphi wrote this text</h3>');
  38. end;
  39. procedure Tasptest.ShowTable;
  40. begin
  41.   DataModule1 := TDataModule1.Create (nil);
  42.   try
  43.     Response.Write (DataModule1.DataSetTableProducer1.Content)
  44.   finally
  45.     DataModule1.Free;
  46.   end;
  47. end;
  48. initialization
  49.   TAutoObjectFactory.Create(ComServer, Tasptest, CLASS_AspTest1_,
  50.     ciMultiInstance, tmApartment);
  51. end.