fabiorov Posted September 10, 2017 Share Posted September 10, 2017 Hi Everybody I have a project in 'desktop' mode, and I don't want to create a new one, copy/paste forms to convert it to ''service'. Is there a simpler way to perform this conversion? I am using 'uniGUI Personal Edition' Quote Link to comment Share on other sites More sharing options...
Sherzod Posted September 11, 2017 Share Posted September 11, 2017 Hi, "If you want to convert a standard uniGUI app to service app, the best way is to create a new Service app and then moving all forms and modules from old app to the new app." Best regards, 1 Quote Link to comment Share on other sites More sharing options...
rgreat Posted September 12, 2017 Share Posted September 12, 2017 You can edit your project dpr file using this template and have all 3 modes in one project simultaneously: // Use one of 3 defines below to choose compile mode: //{$DEFINE UNIGUI_VCL} // Stand Alone Application. //{$DEFINE UNIGUI_SERVICE} // Windows Service Application. //{$DEFINE UNIGUI_ISAPI} // ISAPI Library. {$IFDEF UNIGUI_SERVICE} {$EXTENSION exe} program {$ENDIF} {$IFDEF UNIGUI_VCL} {$EXTENSION exe} program {$ENDIF} {$IFDEF UNIGUI_ISAPI} {$EXTENSION dll} library {$ENDIF} MyProgram; // Your project name. uses {$IFDEF UNIGUI_SERVICE} SvcMgr, {$ENDIF} {$IFDEF UNIGUI_VCL} Forms, {$ENDIF} {$IFDEF UNIGUI_ISAPI} uniGUIISAPI, {$ENDIF} ServerModule in 'ServerModule.pas' {UniServerModule: TUniGUIServerModule}, MainModule in 'MainModule.pas' {UniMainModule: TUniGUIMainModule}, ServiceModule in 'ServiceModule.pas' {MyServiceClass: TUniGUIService}, // Grab this one from a new project. // Add your custom units here. {$R *.res} {$IFDEF UNIGUI_ISAPI} exports GetExtensionVersion, HttpExtensionProc, TerminateExtension; {$ENDIF} begin {$IFDEF UNIGUI_SERVICE} if not Application.DelayInitialize or Application.Installing then Application.Initialize; Application.CreateForm(TMyServiceClass, MyServiceClass); // Get from your service module. Application.Run; {$ENDIF} {$IFDEF UNIGUI_VCL} ReportMemoryLeaksOnShutdown:=True; // Optional. Application.Initialize; TUniServerModule.Create(Application); Application.Run; {$ENDIF} end. 2 1 4 Quote Link to comment Share on other sites More sharing options...
alesf76 Posted January 1, 2018 Share Posted January 1, 2018 You can edit your project dpr file using this template and have all 3 modes in one project simultaneously: // Use one of 3 defines below to choose compile mode: //{$DEFINE UNIGUI_VCL} // Stand Alone Application. //{$DEFINE UNIGUI_SERVICE} // Windows Service Application. //{$DEFINE UNIGUI_ISAPI} // ISAPI Library. {$IFDEF UNIGUI_SERVICE} {$EXTENSION exe} program {$ENDIF} {$IFDEF UNIGUI_VCL} {$EXTENSION exe} program {$ENDIF} {$IFDEF UNIGUI_ISAPI} {$EXTENSION dll} library {$ENDIF} MyProgram; // Your project name. uses {$IFDEF UNIGUI_SERVICE} SvcMgr, {$ENDIF} {$IFDEF UNIGUI_VCL} Forms, {$ENDIF} {$IFDEF UNIGUI_ISAPI} uniGUIISAPI, {$ENDIF} ServerModule in 'ServerModule.pas' {UniServerModule: TUniGUIServerModule}, MainModule in 'MainModule.pas' {UniMainModule: TUniGUIMainModule}, ServiceModule in 'ServiceModule.pas' {MyServiceClass: TUniGUIService}, // Grab this one from a new project. // Add your custom units here. {$R *.res} {$IFDEF UNIGUI_ISAPI} exports GetExtensionVersion, HttpExtensionProc, TerminateExtension; {$ENDIF} begin {$IFDEF UNIGUI_SERVICE} if not Application.DelayInitialize or Application.Installing then Application.Initialize; Application.CreateForm(TMyServiceClass, MyServiceClass); // Get from your service module. Application.Run; {$ENDIF} {$IFDEF UNIGUI_VCL} ReportMemoryLeaksOnShutdown:=True; // Optional. Application.Initialize; TUniServerModule.Create(Application); Application.Run; {$ENDIF} end. It works perfectly! Thanks. Quote Link to comment Share on other sites More sharing options...
fabiorov Posted January 2, 2018 Author Share Posted January 2, 2018 Thanks for the info. Anyway, I fixed the problem by other mean .... I use the software "AlwaysUp" (https://www.coretechnologies.com/products/AlwaysUp/) to keep running a Java application, and I'm also using it for unigui App, so I can build the app as a normal application and run it as a service. Best Regards. 1 1 Quote Link to comment Share on other sites More sharing options...
MR-Irawan Posted November 10, 2021 Share Posted November 10, 2021 On 9/12/2017 at 8:59 AM, rgreat said: You can edit your project dpr file using this template and have all 3 modes in one project simultaneously: // Use one of 3 defines below to choose compile mode: //{$DEFINE UNIGUI_VCL} // Stand Alone Application. //{$DEFINE UNIGUI_SERVICE} // Windows Service Application. //{$DEFINE UNIGUI_ISAPI} // ISAPI Library. {$IFDEF UNIGUI_SERVICE} {$EXTENSION exe} program {$ENDIF} {$IFDEF UNIGUI_VCL} {$EXTENSION exe} program {$ENDIF} {$IFDEF UNIGUI_ISAPI} {$EXTENSION dll} library {$ENDIF} MyProgram; // Your project name. uses {$IFDEF UNIGUI_SERVICE} SvcMgr, {$ENDIF} {$IFDEF UNIGUI_VCL} Forms, {$ENDIF} {$IFDEF UNIGUI_ISAPI} uniGUIISAPI, {$ENDIF} ServerModule in 'ServerModule.pas' {UniServerModule: TUniGUIServerModule}, MainModule in 'MainModule.pas' {UniMainModule: TUniGUIMainModule}, ServiceModule in 'ServiceModule.pas' {MyServiceClass: TUniGUIService}, // Grab this one from a new project. // Add your custom units here. {$R *.res} {$IFDEF UNIGUI_ISAPI} exports GetExtensionVersion, HttpExtensionProc, TerminateExtension; {$ENDIF} begin {$IFDEF UNIGUI_SERVICE} if not Application.DelayInitialize or Application.Installing then Application.Initialize; Application.CreateForm(TMyServiceClass, MyServiceClass); // Get from your service module. Application.Run; {$ENDIF} {$IFDEF UNIGUI_VCL} ReportMemoryLeaksOnShutdown:=True; // Optional. Application.Initialize; TUniServerModule.Create(Application); Application.Run; {$ENDIF} end. Thanks Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.