Hi Matt,
The code in Distribution\Samples\RTD\ExcelRtdServer.dna is about as simple as it gets.
Some relevant points:
* You don't need to use Rx to make RTD servers with Excel-DNA. The Rx extensions are based on the RTD server support, but you can easily make your own RTD servers in an Excel-DNA add-in too.
* Derive from the ExcelRtdServer base class (in ExcelDna.Integration.Rtd) to base your RTD server on.
* Mark your class as [ComVisible(true)] (but remember to never mark your assembly as "Register for COM Interop" in Visual Studio.
* Override at least ConnectData (and probably DisconnectData) to be notified when a new topic is connected from a worksheet function.
* Store the Topic object that is passed to ConnectData, then call its UpdateValue member (as often as you want, and from any thread!) when the data should be updated.
* Make a wrapper function that looks like this:
public static object MyRTDCall(string topicInfo)
{
return XlCall.RTD("MyRTDServers.MyServer", null, topicInfo);
}
* Then call from a formula as =MyRTDCall("XYZ")
Please post back if you have any other specific questions, or run into any problems.
Regards,
Govert