I have a C# RtdServer
that receives data updates from a TCPListener
. It's runs as expected except for that at certain points when it still has active RTD()
s in the sheet ServerTerminate()
is called and I can't seem to figure out why.
I was of the understanding that ServerTerminate()
is called if:
- All rtd formulae are deleted
ServerStart()
doesn't return 1
What other reasons are there for excel to call ServerTerminate()
?
EDIT:
Here is how I setup the HeartBeat
mechanism:
public int ServerStart(IRTDUpdateEvent callback)
{
callback.HeartbeatInterval = 60000; // 1 min HB
_callback = callback;
// Other setup ...
return 1;
}
This is the HeartBeat
code
public int Heartbeat()
{
_log.Info("HB called...");
return 1;
}
From above, I expect to see calls to HeartBeat
every 60 seconds (60Kms) but I see no logging of this. I'm stumped - any ideas??