I solved the wide char issues by changing tcstring<N> to tcstring<N,CharType>,
and fixing some stuff in BoundIO (and elsewhere) so that the wide tcstrings can
be bound natively (not needing a SQLPutData I guess). If you're interested I can
supply a patch. Works for both char and wchar_t. So a member string can be
declared as:
dtl::tcstring<16, wchar_t> m_member;
and used just as a dtl::tcstring<16>
/Rob