Excel-DNA Version 0.30 has now been released on CodePlex. The download is available from http://exceldna.codeplex.com/releases/view/95861.
This version implements support for RTD-based asynchronous worksheet
functions based on a thread-safe RTD base class - ExcelRtdServer. The
asynchronous support is designed to (optionally) integrate with
the .NET 4.0 Task-based operations, as well as the Reactive Extensions
library, allowing IObservables to be exposed as "live" worksheet UDFs
- (thus "RxExcel"). The language-specific support for asynchronous functions found in C# 5, Visual Basic 11 and F# 2.0 can be easily integrated with the Excel-DNA asynchronous interfaces. Some examples experimenting with the new async features are available in the download.
Various bug fixes have also accumulated over the last 18 months, and are collected in this release.
As always, I greatly appreciate any feedback on this version, and on Excel-DNA in general. Any comments or questions are welcome on the Google group or by contacting me directly.
Changelist - Version 0.30 (12 December 2012)
- Fixed
LoadComAddInerror when using a directExcelComAddIn-derived class. - Fixed (Ribbon Helper) display in ribbon tooltips.
- Fixed RTD / array formula activation bug.
- Fixed
IsMacroType=truereference argument sheet error (ExcelReferencepointed to active sheet instead of current sheet). - Fixed array marshaling pointer manipulation concern under 64-bit Excel.
- Fixed check for derived attributes too - for backward compatibility with v. 0.25.
- Fixed assembly multiple-loading problem for packed assemblies.
- Fixed persistent COM registration (
Regsv32.exe/ComServer.DllRegisterServer) to allowHKCRregistration whenever possible (for UAC elevation issue). - Fixed Excel version check when COM / RTD Server loads before add-in is loaded - ribbon would not load.
- Fixed
IntPtrStackOverflowExceptionin high-memory 32-bit processes. - Fixed custom task panes
UserControlactivation - doHKCRregistration whenever possible (for UAC elevation issue). - Fixed
double[0,1]array marshaling memory allocation error with potential access violation. - Allow abstract base classes in
ExcelRibbonclass hierarchy. Now loads the first concrete descendent of ExcelRibbon as the ribbon handler. - Remove Obsolete class
ExcelDna.Integration.Excel. (UseExcelDnaUtilinstead.) Allows smoothXlCallusage. - Allow external
SourceItempacking. - Add
ExcelAsyncUtilfor async macro calls. - Add thread-safe RTD server base class
ExcelRtdServer. - Add async function helper as
ExcelAsyncUtil.Run. - Add support for Reactive Extensions via RTD via
ExcelAsyncUtil.Observeand related interfaces. - Change
ExcelRibbonandComAddInloading to use declaredProgIdandGuidif both attributes are present. Fixed Ribbon QAT issue. - Revisit caching of
Applicationobject. - Rename
ExcelDna.Integration.IntegrationtoExcelDna.Integration.ExcelIntegration. - Implement macro shortcuts (from
ExcelCommandattributes). - Changed re-open via File->Open to do full
AppDomainunload and add-in reload.