The Microsoft Excel 2007 XLL SDK introduced a new data structure, the XLOPER12, which allows your addin to obtain Unicode strings in XLL function calls.  However, there were a couple of limitations with the implemention of the SDK which prevented your XLL from taking full advantage of this new capability. Specifically, while Excel 12 would allow strings in Unicode, some functions would still insist on a 255 character limit if the resulting XLL type was an XLOPER12 type (instead of a LPWSTR type), restricting the length of the overall string.  Also, the benefits of the new string type did not carry over to setting strings with the xlSet function, only accepting them as parameters or reading them as results from certain callback functions.

Excel development has addressed these limitations in a comprehensive fix for Excel 2007, released as part of the the August 2008 Cumulative Update for Excel 2007 (see KB956836 ).