I just received a very nice email from one of you (you know who you are) reporting a bug in the OLE DB Client library, more specifically on the CDbValueRef class (file DbValue.cpp, line 758). The line must read:
*m_pLength = nStrLen * sizeof(wchar_t);
The original code did not multiply the string size with the Unicode character size, so you got a wrong byte count and a bug.
It's always very rewarding to receive emails with correction and suggestions from you (it means someone is reading this... - hehe). Thank you for all the feedback!