In Application.cs, constructor of Application does not initialize "iceSignalPolicy" class member, so Application always "handles" signals, even when told not to do.
Thank you for this bug report. This bug will be fixed shortly.
In the meantime, it's possible you could replace Application by a straight communicator initialization in your code? Application without signal handling is not that useful. If you're using Application because it makes it easy to provide a config file, we added this feature to initialize in Ice 3.7:
And many demo programs use this feature, for example:https://github.com/zeroc-ice/ice-demos/blob/3.7/csharp/Ice/hello/Client.cs#L23
Thank a lot for the explanation. For now, I have rebuilt Ice.dll from source adding a single line in Application constructor. In my implementation, I should first release all resources before communicator shutdown. That's why I do not let Ice.Application handle the signal.