We have a desktop application implemented as Out-of-Proc COM server (MyApplication.exe). The COM server registers successfully. This application is mostly written using C++/MFC.
We also provide the interop assembly (interop.MyApplication.dll) to access this server from the .NET world.
A .NET client (Client.exe) adds reference to the above interop assembly and tries to connect to MyApplication.exe.
Both the application and the client are 64 bit and run on the same machine, Windows 7.
The following code gives different results on different machines.
MyApplication.Application myApp; myApp = new MyApplication.Application(); myApp.Visible = true; MessageBox.Show(myApp.Caption);
- On machine A, MyApplication always starts without any issues.
- On machine B, it is not consistent. Many a times it errors as “The RPC server is unavailable” (Exception from HRESULT: 0x800706BA).
What is the reason for the inconsistent behavior on some machines? Are there any RPC/time-out related settings that can cause this?
Any thoughts are greatly appreciated.
Thanks.