Спасибо за ответ. Я разобрался.
Единственное — остались следующие вопросы :
что именно Вы имели ввиду когда сказали про выравнивание ? (Если можно поподробнее.)
и как вернуть из COM SAFEARRAY структур клиенту на VB (точнее какой VARTYPE использовать)?