Use ArcEngine in the context of a Windows Service

2029
0
03-02-2016 01:06 PM
Alaind_Espaignet1
New Contributor

Does anyone know if it is possible to run ArcEngine in the context of a Windows Service?

I am using RuntimeManager.Bind(ProductCode.Engine)

and

                if (m_AOLicenseInitializer.InitializeApplication(new esriLicenseProductCode[] { esriLicenseProductCode.esriLicenseProductCodeEngineGeoDB },

                                                                new esriLicenseExtensionCode[] { }))

from "generated" LicenseInitializer and the call to InitializeApplication never seems to return.

Service Control Manager says the service failed to start in a timely fashion so the service does not start.

I tried beefing up the service start delay in the registry, No go.

I have Desktop Advanced concurrent license as well as ArcEngine developer license on the machine I am testing.

Why do I want to do this in a Windows Service in the first place?

I am doing data synchronization and using ExportReplicaDataChanges of IGeoDataServer2 to distribute GIS data changes to client apps. This piece is meant to run on a server as a Windows Service.

Can this be done?

Everything runs fine as a console app but not as a service.

Should I do this using a console app fired off by Windows Scheduler instead?

Thanks

Tags (2)
0 Kudos
0 Replies