123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- unit mEncryptEditions;
- interface
- function 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;
- implementation
- uses
- 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.
|