Hi,
It depends on target device how it processes Termination. Some of them do not close a connection, some do. If device closes a connection OnDisconnect will fire any way (if connection was already established).
Yes, when Timeout happened during connection then OnConnect with fire with e.error contained WCL_E_TIMEOUT.
You are very welcome.