diff --git a/demo/TestEET.dpr b/demo/TestEET.dpr index e103c8e..235a1c8 100644 --- a/demo/TestEET.dpr +++ b/demo/TestEET.dpr @@ -14,6 +14,10 @@ program TestEET; USE_INDY - recompile SOAP comunications with Indy USE_LIBEET - use wrapper libeetsigner.dll - static compiled into one library (libxml2, xmlsec, openssl) compiled with Visual Studio 2013 U5 Express - VC12 (VS Runtime 2013) needed MSVCR120.dll + USE_UCRT_LIBS - use libxml2 and xmlsec compiled with Visual Studio + solution for time_t compatibility + VS 2013 and lower using MSVCRxxx.dll + VS 2015 and higher VCRUNTIME140.dll (ucrtbase.dll) (for other) Delphi Compiler Options -> Output Directory: ..\bin @@ -25,6 +29,7 @@ program TestEET; uses + System.SimpleShareMem, Forms, u_main in 'u_main.pas' {TestEETForm}, u_EETXMLSchema in '..\include\databinding\u_EETXMLSchema.pas'; diff --git a/include/xmlsec/libxml2.pas b/include/xmlsec/libxml2.pas index 4fc3045..d217663 100644 --- a/include/xmlsec/libxml2.pas +++ b/include/xmlsec/libxml2.pas @@ -10,7 +10,7 @@ interface const -{$IFDEF WIN32} +{$IFDEF MSWINDOWS} LIBXML2_SO = {$IFNDEF USE_UCRT_LIBS}'libxml2-2.dll'{$ELSE}'libxml2.dll'{$ENDIF}; {$ELSE} LIBXML2_SO = 'libxml2.so'; diff --git a/include/xmlsec/libxmlsec.pas b/include/xmlsec/libxmlsec.pas index 29e1183..17d0a4d 100644 --- a/include/xmlsec/libxmlsec.pas +++ b/include/xmlsec/libxmlsec.pas @@ -10,14 +10,22 @@ interface uses libxml2, libxslt; const -{$IFDEF WIN32} - LIBXMLSEC_SO = {$IFNDEF USE_UCRT_LIBS}'libxmlsec1.dll'{$ELSE}'libxmlsec.dll'{$ENDIF}; +{$IFDEF MSWINDOWS} + LIBXMLSEC_SO = {$IFDEF USE_UCRT_LIBS}'libxmlsec.dll'{$ELSE}'libxmlsec1.dll'{$ENDIF}; {$ELSE} LIBXMLSEC_SO = 'libxmlsec.so'; {$ENDIF} +{$IFNDEF USE_UCRT_LIBS} + {$DEFINE _USE_32BIT_TIME_T} +{$ENDIF} + type +{$IFDEF _USE_32BIT_TIME_T} time_t = LongInt; +{$ELSE} + time_t = Int64; +{$ENDIF} xmlSecSize = Cardinal; xmlSecSizePtr = ^xmlSecSize; xmlSecByte = Byte;