I am using Eikon .NET Desktop API. When I have retrieve some historical prices and close my application – there are many instances of Eikon.exe and EikonBox.exe running. When I close the Eikon 4.0 Desktop application there still 1 Eikon.exe*32 and 10 instances of EikonBox.exe *32 running. If I run the Thomson Reutors Eikon – Process viewer it shows only two processes EikonBox.exe and Eikon.exe. I have two questions: 1) What is the best way to close/dispose any running processes after my application closes? I could kill all the processes but would like to exit the main Eikon desktop application gracefully. 2) Is there a way to programmatically close the main Eikon desktop application?
You're correct in observing that when you close Eikon, a few Eikon processes keep running. To manually shut down Eikon completely select Shut Down command from the Close menu, or shut it down from the Notification area (aka system tray) in Windows taskbar.
Eikon is not positioned as a proxy for your application, even though it may be the only way in which you intend to use it. Eikon is a rich application targeted primarily at end users. It may not be a good idea to close Eikon from your application, as your application cannot know whether Eikon was launched by user prior to your application or if it was your application that launched Eikon. However if in your use case you're certain that you want to shut down Eikon, then I'm afraid the only way to do it is by killing the processes. Normally it's enough to just kill eikon.exe. All other Eikon processes will then die by themselves shortly after, unless one or more of these other processes is hung. There is a brutal way of completely shutting down Eikon with one command, but I would most certainly not recommend it for your use case, as this command kills all Eikon related processes including daemon for MS Office and potential updates running. For your use case it's probably best to just kill eikon.exe, if indeed you need to close Eikon at all.