i have written a c# dll with the Eikon Data API set. I installed
ThomsonReuters.Udap.Ipc.Signed.x64 via Nuget and it installed the other required references as well. It is a Net. 4.7.2 Project.
Now, when I run the code in Debugging in Visual Studio 2017 (VS2017), the host application starts fine and then loads my dll in which I have the Eikon Data API and it all runs as expected.
Though, when I start my host application without the VS2017 debugging, I get an error as the attached picture and mainly stating, that it does not find ThomsonReuters.Udap.BusTools.dll, though where else is this dll expected, if not in the root directory, in which my dll is in also? I have local copy set to true fro all references.
The error comes up, when this statement is run:
Services = DataServices.Instance;
Any idea what what needs to be done?
This error can only have one root cause: ThomsonReuters.Udap.BusTools.dll or one of its dependencies such as EikonPipeDll.dll is missing where application expects them. Windows expects the files to be in the same folder as the host executable, not in the same folder where your DLL is. If the host executable and your DLL are in the same folder, then I can only think that perhaps some of ThomsonReuters.Udap.BusTools.dll dependencies such as EikonPipeDll.dll were not copied across to Release folder when you switched from Debug to Release build. In this case you can easily compare the list of files in the Debug and the Release folders. For details on how Windows is looking for DLLs see this Microsoft article. You can also use Sysinternals Process Monitor to see where Windows is looking for the files your application is trying to load.