Здравствуйте DT, Вы писали:
DT> m_bstrBody = A2BSTR(buffer);
Проблема скорее всего вот здесь.
Про это где-то говорил Alex Fedotov. Нельзя макросы конвертации использовать для больших объемов данных (для файлов в данном случае), т.к. они резервируют буфер в стеке. А стек не резиновый.