Страница 1 из 1

Visual Basic + COM + массивы, хреновина получается

Добавлено: 07 апр 2005, 04:44
Sipulcator
Сегодня всю жопу просидел, бился над задачей. Как мне передать массив из VB в функцию COM-объекта?
Функция в IDL описана так:
HRESULT ConnectToSCManager([in] short size, [in, size_is(size)] wchar_t machineName[]);
Какие типы данных я туда не запихивал, какими только способами! Всегда ошибка Type missmatch. При самом хорошем расскладе удаётся передать только одну переменную, и то к ней прилипает какая-то вторая, неизвестно откуда взявшаяся. Т.е. пишу в параметр machineName число 48, сервер получает "0"(он же 48 ) и откуда-то взявшуюся букву "з". Помогите пожалуйста, а то я уже совсем затрахался, не знаю что делать!!! :cry:

Добавлено: 07 апр 2005, 04:49
Sipulcator
Чуть не забыл. Хорошо, чтобы этот массив читался из TextBox, т.е. был типом String. Я не знаю, может для этого надо тип в самой функции поменять?

Добавлено: 13 апр 2005, 03:09
Sipulcator
Всё, разобрался. BSTR и VARIANT решили проблему. Осторожно, тема закрывается!