Prvni verze
This commit is contained in:
215
hdcDZApi.dpr
Normal file
215
hdcDZApi.dpr
Normal file
@ -0,0 +1,215 @@
|
||||
program hdcDZApi;
|
||||
|
||||
{$IFDEF DEBUG}
|
||||
{$APPTYPE CONSOLE}
|
||||
{$ENDIF}
|
||||
|
||||
{$I GlobalDefs.inc}
|
||||
|
||||
uses
|
||||
MSHeap,
|
||||
Vcl.SvcMgr,
|
||||
System.SysUtils,
|
||||
Winapi.Windows,
|
||||
|
||||
MVCFramework.Middleware.Swagger,
|
||||
MVCFramework.Swagger.Commons,
|
||||
uWinService in 'uWinService.pas' {HDCApiService: TService},
|
||||
uWebMod in 'uWebMod.pas' {WebModule1: TWebModule},
|
||||
uDataMod in 'uDataMod.pas' {datMod: TDataModule},
|
||||
|
||||
helTabsBIDs,
|
||||
|
||||
uCommons in 'uCommons.pas',
|
||||
uCtrlBase in 'uCtrlBase.pas',
|
||||
uCtrlZamestnanci in 'uCtrlZamestnanci.pas',
|
||||
uCtrlKmenZbozi in 'uCtrlKmenZbozi.pas',
|
||||
uCtrlObehZbozi in 'uCtrlObehZbozi.pas',
|
||||
uCtrlVyroba in 'uCtrlVyroba.pas',
|
||||
uCtrlQMS in 'uCtrlQMS.pas',
|
||||
uCtrlOrganizace in 'uCtrlOrganizace.pas',
|
||||
uCtrlObecne in 'uCtrlObecne.pas',
|
||||
|
||||
uHeOObj_Base in 'uHeOObj_Base.pas',
|
||||
uHeoObj_Vyroba in 'uHeoObj_Vyroba.pas',
|
||||
uHeoObj_QMS in 'uHeoObj_QMS.pas',
|
||||
|
||||
uSvc_Base in 'uSvc_Base.pas',
|
||||
uSvc_ObehZbozi in 'uSvc_ObehZbozi.pas',
|
||||
uSvc_KmenZbozi in 'uSvc_KmenZbozi.pas',
|
||||
uSvc_Vyroba in 'uSvc_Vyroba.pas',
|
||||
uSvc_Organizace in 'uSvc_Organizace.pas',
|
||||
uSvc_Zamestnanci in 'uSvc_Zamestnanci.pas',
|
||||
uSvc_Obecne in 'uSvc_Obecne.pas',
|
||||
uSvc_QMS in 'uSvc_QMS.pas'
|
||||
|
||||
{$IFDEF CUSTOM_CTRL}
|
||||
,uHeOObj_Custom in 'uHeOObj_Custom.pas'
|
||||
,uCtrlCustom in 'uCtrlCustom.pas'
|
||||
,uSvcCustom in 'uSvcCustom.pas'
|
||||
{$ENDIF}
|
||||
|
||||
{$IFDEF CUSTOM_CTRL_Kdynium}
|
||||
,uHeOObj_Custom in '_custom\Kdynium\uHeOObj_Custom.pas'
|
||||
,uCtrlCustom in '_custom\Kdynium\uCtrlCustom.pas'
|
||||
,uSvcCustom in '_custom\Kdynium\uSvcCustom.pas'
|
||||
{$ENDIF}
|
||||
|
||||
{$IFDEF CUSTOM_CTRL_GatemaSD}
|
||||
,uHeOObj_CustomSDG in '_custom\GatemaSD\uHeOObj_CustomSDG.pas'
|
||||
,uCtrlCustomSDG in '_custom\GatemaSD\uCtrlCustomSDG.pas'
|
||||
,uSvcCustomSDG in '_custom\GatemaSD\uSvcCustomSDG.pas'
|
||||
{$ENDIF}
|
||||
|
||||
{$IFDEF CUSTOM_CTRL_Rootvin}
|
||||
,uHeOObj_Custom in '_custom\Rootvin\uHeOObj_Custom.pas'
|
||||
,uCtrlCustom in '_custom\Rootvin\uCtrlCustom.pas' {TRTNController: TBaseController},
|
||||
uSvcCustom in '_custom\Rootvin\uSvcCustom.pas'
|
||||
{$R '_custom\Rootvin\zdroje.RES'}
|
||||
{$ENDIF}
|
||||
|
||||
{$IFDEF CUSTOM_CTRL_Koramex}
|
||||
,uHeOObj_Custom in '_custom\Koramex\uHeOObj_Custom.pas'
|
||||
,uCtrlCustom in '_custom\Koramex\uCtrlCustom.pas'
|
||||
,uSvcCustom in '_custom\Koramex\uSvcCustom.pas'
|
||||
{$ENDIF}
|
||||
|
||||
{$IFDEF CUSTOM_CTRL_INCOSystems}
|
||||
,uHeOObj_Custom in '_custom\INCOSystems\uHeOObj_Custom.pas'
|
||||
,uCtrlCustom in '_custom\INCOSystems\uCtrlCustom.pas'
|
||||
,uSvcCustom in '_custom\INCOSystems\uSvcCustom.pas'
|
||||
{$ENDIF}
|
||||
|
||||
{$IFDEF CUSTOM_CTRL_Gornicky}
|
||||
,uHeOObj_Custom in '_custom\Gornicky\uHeOObj_Custom.pas'
|
||||
,uCtrlCustom in '_custom\Gornicky\uCtrlCustom.pas'
|
||||
,uSvcCustom in '_custom\Gornicky\uSvcCustom.pas'
|
||||
{$R '_custom\Gornicky\zdroje.RES'}
|
||||
{$ENDIF}
|
||||
|
||||
{$IFDEF CUSTOM_CTRL_EMPolar}
|
||||
,uHeOObj_Custom in '_custom\EMPolar\uHeOObj_Custom.pas'
|
||||
,uCtrlCustom in '_custom\EMPolar\uCtrlCustom.pas'
|
||||
,uSvcCustom in '_custom\EMPolar\uSvcCustom.pas'
|
||||
{$R '_custom\EMPolar\zdroje.RES'}
|
||||
{$ENDIF}
|
||||
;
|
||||
|
||||
|
||||
{$R *.RES}
|
||||
{$R sqlZdroje.RES}
|
||||
|
||||
|
||||
{$IFDEF CUSTOM_CTRL_Rootvin}
|
||||
{$R .\_custom\Rootvin\zdroje.RES}
|
||||
{$ENDIF}
|
||||
|
||||
{$IFDEF CUSTOM_CTRL_INCOSystems}
|
||||
{$R .\_custom\INCOSystems\zdroje.RES}
|
||||
{$ENDIF}
|
||||
|
||||
{$IFDEF CUSTOM_CTRL_Gornicky}
|
||||
{$R .\_custom\Gornicky\zdroje.RES}
|
||||
{$ENDIF}
|
||||
|
||||
|
||||
procedure SpustitJakoPrg;
|
||||
var Event : TInputrecord;
|
||||
EventsRead : DWORD;
|
||||
Done : Boolean;
|
||||
begin
|
||||
try
|
||||
var HDCDZApiService: THDCDZApiService;
|
||||
var started: boolean;
|
||||
var stopped: boolean;
|
||||
|
||||
Application.CreateForm (TdatMod, datMod);
|
||||
// In debug mode the server acts as a console application.
|
||||
// Create the TService descendant manually.
|
||||
|
||||
// uWinService.UninstallMode:= true;
|
||||
HDCDZApiService:= THDCDZApiService.Create (nil);
|
||||
|
||||
WriteLn (HDCDZApiService.Name + ' DEBUG mode');
|
||||
|
||||
HDCDZApiService.ServiceAfterInstall (HDCDZApiService);
|
||||
|
||||
// Simulate service start.
|
||||
HDCDZApiService.ServiceStart (HDCDZApiService, started);
|
||||
// Keep the console box running (ServerContainer1 code runs in the background)
|
||||
WriteLn('Press ENTER to exit.');
|
||||
ReadLn;
|
||||
WriteLn('Ukoncuji thready...');
|
||||
HDCDZApiService.ServiceStop (HDCDZApiService, stopped);
|
||||
|
||||
HDCDZApiService.ServiceBeforeUninstall (HDCDZApiService);
|
||||
HDCDZApiService.ServiceAfterUnInstall (HDCDZApiService);
|
||||
|
||||
// On exit, destroy the service object.
|
||||
if (stopped) then
|
||||
FreeAndNil (HDCDZApiService);
|
||||
except
|
||||
on E: Exception do
|
||||
begin
|
||||
Writeln(E.ClassName, ': ', E.Message);
|
||||
{$IFDEF DEBUG}
|
||||
Done:= False;
|
||||
repeat
|
||||
ReadConsoleInput(GetStdhandle(STD_INPUT_HANDLE), Event, 1, EventsRead);
|
||||
if Event.Eventtype = key_Event then
|
||||
begin
|
||||
if Event.Event.KeyEvent.bKeyDown then
|
||||
begin
|
||||
Done:= (Event.Event.KeyEvent.wVirtualKeyCode = VK_ESCAPE);
|
||||
{
|
||||
if (not Done) and (Event.Event.KeyEvent.AsciiChar <> #0) then
|
||||
WriteLn('You typed: ', Event.Event.KeyEvent.AsciiChar);
|
||||
}
|
||||
end;
|
||||
end;
|
||||
until Done;
|
||||
{$ENDIF}
|
||||
// WriteLn('Press ENTER to exit.');
|
||||
// ReadLn;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
|
||||
|
||||
|
||||
begin
|
||||
ReportMemoryLeaksOnShutdown:= false;
|
||||
|
||||
{$IFDEF DEBUG}
|
||||
SpustitJakoPrg;
|
||||
{$ELSE}
|
||||
if (FindCmdLineSwitch('dbg', true)) then
|
||||
SpustitJakoPrg
|
||||
else
|
||||
begin
|
||||
|
||||
// Windows 2003 Server requires StartServiceCtrlDispatcher to be
|
||||
// called before CoRegisterClassObject, which can be called indirectly
|
||||
// by Application.Initialize. TServiceApplication.DelayInitialize allows
|
||||
// Application.Initialize to be called from TService.Main (after
|
||||
// StartServiceCtrlDispatcher has been called).
|
||||
//
|
||||
// Delayed initialization of the Application object may affect
|
||||
// events which then occur prior to initialization, such as
|
||||
// TService.OnCreate. It is only recommended if the ServiceApplication
|
||||
// registers a class object with OLE and is intended for use with
|
||||
// Windows 2003 Server.
|
||||
//
|
||||
// Application.DelayInitialize := True;
|
||||
//
|
||||
if not Application.DelayInitialize or Application.Installing then
|
||||
Application.Initialize;
|
||||
Application.CreateForm(THDCDZApiService, HDCDZApiService);
|
||||
Application.CreateForm(TdatMod, datMod);
|
||||
Application.Run;
|
||||
end;
|
||||
|
||||
{$ENDIF}
|
||||
|
||||
end.
|
||||
Reference in New Issue
Block a user