The further arguments you pass to "XlCall.Excel(XlCall.xlfRtd, RtdServer.ServerProgId,....)” form an array of topic strings that identify an RTD topic.
If you call with the same topic strings, and the topic is already ‘alive’ you will get back the existing value for the topic, without your RTD server “ConnectData” being called. So to really understand what is going on, you should also check and log which “DisconnectData” calls are made, so that you can correlate the various calls for each topic (and for each array of topic strings). Your UDF might also have some data conversions before calling the xlfRtd function, causing different arguments to the UDF being called as the same strings to the xlfRtd call.
There have also been some RTD bugs related to the Disconnect in the past, though they are resolved in current versions. And further, there were some changes made to the Excel RTD implementation a few years ago (including fixing problems with array-returning RTD functions, and allowing ThreadSafe UDFs to call RTD).
If you are testing with a mix of versions, I would start by characterizing the behaviour with the current version first, then figuring out whether other versions you test with behave differently.
It’s hard to say much more without having a working example project to poke at.
-Govert
--
You received this message because you are subscribed to the Google Groups "Excel-DNA" group.
To unsubscribe from this group and stop receiving emails from it, send an email to exceldna+u...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/exceldna/58985cbe-ec5b-4d02-978d-8a150dc474edn%40googlegroups.com.