birger
(Birger Buhl Dinesen)
September 29, 2020, 6:50am
1
When adding a new HY RO service plugin the THYROFactory/THYServicePluginFactory line is missing from the _Impl unit.
Usually it looks like this:
initialization
fClassFactory := TROClassFactory.Create('svcAdminWL3', {$IFDEF FPC}@{$ENDIF}Create_svcAdminWL3, TsvcAdminWL3_Invoker);
// RegisterForZeroConf(fClassFactory,'_svcAdminWL3_rosdk._tcp.');
THYROFactory.Create(HInstance, fClassFactory);
finalization
UnRegisterClassFactory(fClassFactory);
fClassFactory := nil;
Is this not needed anymore?
The DLL is seemingly loaded correctly and when I use TDADesignTimeCall component, the new service is shown.
birger
(Birger Buhl Dinesen)
September 29, 2020, 6:52am
2
Delphi 10.3 Update 2
Hydra 6.2.103.1251
DataAbstract 10.0.0.1481
mh
(marc hoffman)
September 29, 2020, 2:01pm
3
Birger,
to clarify, there’s no problem, all seems to be working correctly for you, you just want to be sure the change is intended?
I’m asking because Eugene, who’ll know the definitive answer, will be off for a couple of weeks.
birger
(Birger Buhl Dinesen)
September 29, 2020, 3:00pm
4
It seems to be working when I run the RODAHY server, and the DLL gets loaded.
And in designtime I can lookup the service with the TDADesignTimeCall.
But I have not tested it completely yet.
So, until now I’m fine, but I will let you know if I encounter any issues.
And, it would be nice to know if it is an intended change, once Eugene gets back.
1 Like
EvgenyK
(Evgeny Karpov)
October 9, 2020, 12:47pm
6
Hi,
can you attach the generated _impl file, pls?
you can remove all logic from service method. it doesn’t matter.
Edit: you can drop email to support@ for keeping privacy
birger
(Birger Buhl Dinesen)
October 9, 2020, 3:35pm
7
unit svcMainPROJEKT_Impl;
// ----------------------------------------------------------------------
// This file was automatically generated by Remoting SDK from a
// RODL file downloaded from a server or associated with this project.
//
// This is where you are supposed to code the implementation of your objects.
// ----------------------------------------------------------------------
{$I RemObjects.inc}
interface
uses
{$IFDEF DELPHIXE2UP}System.SysUtils{$ELSE}SysUtils{$ENDIF},
{$IFDEF DELPHIXE2UP}System.Classes{$ELSE}Classes{$ENDIF},
{$IFDEF DELPHIXE2UP}System.TypInfo{$ELSE}TypInfo{$ENDIF},
uROEncoding,
uROXMLIntf,
uROClientIntf,
uROClasses,
uROTypes,
uROServer,
uROServerIntf,
uROSessions,
uRORemoteDataModule,
uDAInterfaces,
uDAServerInterfaces,
uDADelta,
uDABusinessProcessor,
uDASchema,
svcBaseWL3_Impl,
DataAbstract4_Intf,
libBaseWL3_Intf,
libWL3_Intf,
libPROJEKT_Intf;
const __ServiceName = 'svcMainPROJEKT';
type
{ Forward declarations }
TsvcMainPROJEKT = class;
TsvcMainPROJEKT = class(TsvcBaseWL3, IsvcMainPROJEKT)
end;
implementation
{$IFDEF DELPHIXE2UP}
{%CLASSGROUP 'System.Classes.TPersistent'}
{$ENDIF}
{$IFNDEF FPC}
{$R *.dfm}
{$ENDIF}
{$IFDEF FPC}
{$R *.lfm}
{$ENDIF}
uses
DataAbstract4_Invk,
libBaseWL3_Invk,
libWL3_Invk,
libPROJEKT_Invk;
var fClassFactory_svcMainPROJEKT: IROClassFactory;
procedure Create_svcMainPROJEKT(out anInstance: IInterface);
begin
anInstance := TsvcMainPROJEKT.Create(nil);
end;
initialization
fClassFactory_svcMainPROJEKT := TROClassFactory.Create(__ServiceName, {$IFDEF FPC}@{$ENDIF}Create_svcMainPROJEKT, TsvcMainPROJEKT_Invoker);
// RegisterForZeroConf(fClassFactory_svcMainPROJEKT, '_svcMainPROJEKT_rosdk._tcp.');
finalization
UnRegisterClassFactory(fClassFactory_svcMainPROJEKT);
fClassFactory_svcMainPROJEKT := nil;
end.
birger
(Birger Buhl Dinesen)
October 9, 2020, 3:36pm
8
library modProjektWL3;
uses
uROCOMInit,
SysUtils,
Classes,
hcModProjektWL3Controller in 'hcModProjektWL3Controller.pas' {ModProjektWL3Controller: THYModuleController},
libPROJEKT_Intf in 'libPROJEKT_Intf.pas',
libPROJEKT_Invk in 'libPROJEKT_Invk.pas',
svcMainPROJEKT_Impl in 'svcMainPROJEKT_Impl.pas',
svcBaseLibWL3_Impl in '..\..\WinLog35\source\shared\svcBaseLibWL3_Impl.pas' {svcBaseLibWL3: TDataAbstractService},
svcBaseWL3_Impl in '..\..\WinLog35\source\shared\svcBaseWL3_Impl.pas' {svcBaseWL3: TDataAbstractService},
DASchemaClient_Intf in 'DASchemaClient_Intf.pas',
DASchemaServer_Intf in 'DASchemaServer_Intf.pas';
{#ROGEN:modProjektWL3.rodl} // RemObjects: Careful, do not remove!
{$R RODLFile.res}
{#HYDRAMODULE}
{$R *.res}
begin
end.
Thanks, logged as bugs://85040
bugs://85040 got closed with status fixed.
EvgenyK
(Evgeny Karpov)
October 12, 2020, 12:52pm
11
Hi,
fix will be in RO/DA .1491