| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 | unit mEncryptEditions;interfacefunction CheckMeasureEdition: Boolean;function CheckCompileEdition: Boolean;function CheckPlanEdition: Boolean;procedure InitialModuleEdition;function CheckEncryptEdition(AEdition: Integer): Boolean;const  eidLimitedFixBills = 52;  eidFixBills = 53;  eidStandard = 178;  iAllEdition = 211;  iCompileEdition = 212;  iMeasureEdition = 213;  iPlanEdition = 214;  EditionHint = '当前加密锁未开通此模块功能,请购买【%s】功能并升级加密锁或联系纵横客服:企业QQ:800003850  电话:(0756)3850888';var  _bHasCompileEdition: Boolean;  _bHasMeasureEdition: Boolean;  _bHasPlanEdition: Boolean;implementationuses  mEncryptUnit, SysUtils, UtilMethods, ConditionalDefines;function CheckMeasureEdition: Boolean;begin  Result := _bHasMeasureEdition;  if not Result then    ErrorMessage(Format(EditionHint, ['计量台账']));end;function CheckCompileEdition: Boolean;begin  Result := _bHasCompileEdition;  if not Result then    ErrorMessage(Format(EditionHint, ['台账编制']));end;function CheckPlanEdition: Boolean;begin  Result := _bHasPlanEdition;  if not Result then    ErrorMessage(Format(EditionHint, ['资金计划']));end;procedure InitialModuleEdition;begin  {$IFDEF _mEncrypt}    _bHasCompileEdition := False;    _bHasMeasureEdition := False;    _bHasPlanEdition := False;  {$ELSE}    _bHasCompileEdition := True;    _bHasMeasureEdition := True;    _bHasPlanEdition := True;  {$ENDIF}end;function CheckEncryptEdition(AEdition: Integer): Boolean;begin  {$IFDEF _mEncrypt}    // 检测是否能打开软件    case _ModuleType of      mtAll: Result := AEdition in [iAllEdition, iCompileEdition, iMeasureEdition, iPlanEdition];      mtCompile: Result := AEdition in [iAllEdition, iCompileEdition];    end;    AddEncryptLog(Format('[N] CheckS4Edition: Edition = %d And Result = %d', [AEdition, (Ord(Result))]));    if not Result then Exit;    // 软件可以打开的基础上,检测各个模块功能是否可用    case AEdition of      iAllEdition:        begin          _bHasMeasureEdition := True;          _bHasCompileEdition := True;          _bHasPlanEdition := True;        end;      iCompileEdition: _bHasCompileEdition := True;      iMeasureEdition: _bHasMeasureEdition := True;      iPlanEdition: _bHasPlanEdition := True;    end;  {$ELSE}    Result := True;  {$ENDIF}end;end.
 |