в методе СОМ объекта получить массив вариантов
От: slan046  
Дата: 16.11.11 11:02
Оценка:
Добрый день, я в COM новичок. Нужно на Builder сделать COM-объект, одним из методов которого будет например такой метод:
Method1(LPDISPATCH Arr);

От клиента будет приходить массив вариантов. Вопрос в том как мне их получить из Arr?
Re: в методе СОМ объекта получить массив вариантов
От: Vi2 Удмуртия http://www.adem.ru
Дата: 16.11.11 12:52
Оценка:
Здравствуйте, slan046, Вы писали:

S>Добрый день, я в COM новичок. Нужно на Builder сделать COM-объект, одним из методов которого будет например такой метод:

S>
Method1(LPDISPATCH Arr);

S>От клиента будет приходить массив вариантов. Вопрос в том как мне их получить из Arr?

При таком определении метода массив вариантов прийти не может. LPDISPATCH Arr — этот аргумент содержит указатель на интерфейс/объект. Возможно, за этим объектом стоит массив вариантов, например, JScript массив. Тогда каждый элемент массива может быть запрошен у этого объекта. По номеру, по имени и т.п. Как у обычного объекта.
Vita
Выше головы не прыгнешь, ниже земли не упадешь, дальше границы не убежишь! © КВН НГУ
Re[2]: в методе СОМ объекта получить массив вариантов
От: Аноним  
Дата: 17.11.11 07:14
Оценка:
Здравствуйте, Vi2, Вы писали:

Vi2>При таком определении метода массив вариантов прийти не может. LPDISPATCH Arr — этот аргумент содержит указатель на интерфейс/объект. Возможно, за этим объектом стоит массив вариантов, например, JScript массив. Тогда каждый элемент массива может быть запрошен у этого объекта. По номеру, по имени и т.п. Как у обычного объекта.


Да просто в требованиям к COM-объекту написано так (про интересующий метод):
Подключить(МассивЗначений);
МассивЗначений — тип *IDispatch[IN], массив значений для настройки подключения.

ЕСли не так:
Method1(LPDISPATCH Arr);


Тогда может быть так?
Method1(LPSAFEARRAY Arr);
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.