Re: Как передать бинарный массив из COM обекта и обратно
От: Ivan Россия www.rsdn.ru
Дата: 07.02.03 10:00
Оценка: 5 (1)
Здравствуйте, Ionich, Вы писали:

I>Подскажите как осуществить subj.

Вариант 1 — использовать BSTR
SysAllocString, потом копируешь туда свои бинарные данные и передаешь. Минус — VB не сможет ни записать, ни прочитать такие данные, его можно использовать только в качестве посредника

Вариант 2 —
SafeArray из VT_UI1
Как передать бинарный массив из COM обекта и обратно
От: Ionich  
Дата: 07.02.03 09:57
Оценка:
Подскажите как осуществить subj.
Re[2]: Как передать бинарный массив из COM обекта и обратно
От: Ionich  
Дата: 07.02.03 10:04
Оценка:
Здравствуйте, Ivan, Вы писали:

I>Здравствуйте, Ionich, Вы писали:


I>>Подскажите как осуществить subj.

I>Вариант 1 — использовать BSTR
I>SysAllocString, потом копируешь туда свои бинарные данные и передаешь. Минус — VB не сможет ни записать, ни прочитать такие данные, его можно использовать только в качестве посредника

I>Вариант 2 —

I>SafeArray из VT_UI1

1-й вариант не подходит по вышеописанной причине.
А можно немного подробней о SAFEARRAY?
Re[3]: Как передать бинарный массив из COM обекта и обратно
От: Ivan Россия www.rsdn.ru
Дата: 07.02.03 10:11
Оценка:
Здравствуйте, Ionich, Вы писали:

I>1-й вариант не подходит по вышеописанной причине.

По какой причине ? BSTR прекрасно подходит для передачи бинарных данных и работать с ней гораздо проще чем с SAFEARRAY'ем

I>А можно немного подробней о SAFEARRAY?

Здесь статья есть про работу с SAFERRAY'ями и в форуме неоднократно были примеры кода. Можешь например, использовать T_SafeVector из Platform SDK — сделай поиск по "T_SafeVector" в этом форуме
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.