/[projects]/dao/DelphiScanner/Components/tpsystools_4.04/source/COM/_StExpr.pas
ViewVC logotype

Annotation of /dao/DelphiScanner/Components/tpsystools_4.04/source/COM/_StExpr.pas

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2671 - (hide annotations) (download)
Tue Aug 25 18:15:15 2015 UTC (8 years, 10 months ago) by torben
File size: 2466 byte(s)
Added tpsystools component
1 torben 2671 (* ***** BEGIN LICENSE BLOCK *****
2     * Version: MPL 1.1
3     *
4     * The contents of this file are subject to the Mozilla Public License Version
5     * 1.1 (the "License"); you may not use this file except in compliance with
6     * the License. You may obtain a copy of the License at
7     * http://www.mozilla.org/MPL/
8     *
9     * Software distributed under the License is distributed on an "AS IS" basis,
10     * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
11     * for the specific language governing rights and limitations under the
12     * License.
13     *
14     * The Original Code is TurboPower SysTools
15     *
16     * The Initial Developer of the Original Code is
17     * TurboPower Software
18     *
19     * Portions created by the Initial Developer are Copyright (C) 1996-2002
20     * the Initial Developer. All Rights Reserved.
21     *
22     * Contributor(s):
23     *
24     * ***** END LICENSE BLOCK ***** *)
25    
26     {*********************************************************}
27     {* _STEXPR.PAS 3.00 *}
28     {*********************************************************}
29    
30     {$I STDEFINE.INC}
31     {$I STCOMDEF.INC}
32     unit _StExpr;
33    
34     interface
35    
36     uses
37     ComObj, ActiveX, SysTools_TLB, StdVcl;
38    
39     type
40     TStExpr = class(TAutoObject, IStExpr)
41     private
42     FIsLicensed : Boolean;
43     public
44     procedure Initialize; override;
45     protected { Protected declarations }
46     { IStExpr methods }
47     function AnalyzeExpr(const Expr: WideString): Double; safecall;
48     function License(const Key: WideString): WordBool; safecall;
49     { Protected declarations }
50     end;
51    
52     implementation
53    
54     {$DEFINE UseMathUnit}
55     uses ComServ, StExpr {$IFDEF LICENSE}, StComLic {$ENDIF};
56    
57     procedure TStExpr.Initialize;
58     begin
59     inherited Initialize;
60     {$IFDEF LICENSE}
61     FIsLicensed := False;
62     {$ELSE}
63     FIsLicensed := True;
64     {$ENDIF}
65     end;
66    
67     { ********** TStExpr Methods ************************************************************* }
68     function TStExpr.AnalyzeExpr(const Expr: WideString): Double;
69     begin
70     {$IFDEF LICENSE}
71     if (not FIsLicensed) or (not COMHasBeenLicensed) then
72     OleError(CLASS_E_NOTLICENSED);
73     {$ENDIF}
74     Result := StExpr.AnalyzeExpr(Expr);
75     end;
76    
77     function TStExpr.License(const Key: WideString): WordBool;
78     begin
79     {$IFDEF LICENSE}
80     Result := COMIsValidKey(Key);
81     {$ELSE}
82     Result := True;
83     {$ENDIF}
84     FIsLicensed := Result;
85     end;
86    
87     initialization
88     TAutoObjectFactory.Create(ComServer, TStExpr, Class_StExpr, ciMultiInstance, tmBoth);
89     end.
90    

  ViewVC Help
Powered by ViewVC 1.1.20