C++ Com object + VB

biker555

Кто писал КОМ обьекты на c++ и использовал их в VB, отзовитесь плз.

1234554321

До чего людей жизнь может довести - VB юзать! А если по делу - могу дать Эпплмана в электронном виде, если хотёшь....

biker555

Вот именно - довела.
Что за книга?
У меня просто пара вопросов есть, чтоб быстро разобраться.

1234554321

Книга, где есть всё про VB для винды. Как раз подходит для поиска ответов на вопросы.

biker555

Давай. Где брать?
Заранее спасибо.

1234554321

Нигде не брать, самовывоз( ) - точнее, могу залить.

biker555

Пошарить не можешь?
Я все сервисы и юзеров прибил давно. Поднимать все долго и перезагрузками.

1234554321

Хорошо тебе, а у меня вот 98-я - пошарил и можно переустанавливать (спасибо добрым людям, считающим себя хакерами); а файрвол влом ставить, так что шарить не могу.

1234554321

Мде..., возможно ты будешь смеяться, но я посеял диск. Неувязочка вышла , извини. Если хочешь, напиши, что за вопросы - может встречались, хотя VB я давно не юзал....

Dasar

А в чем проблемы? И какие вопросы?

biker555

В данный момент проблема такая:
надо при неком действии внутри ком компоненты, например при получении данных с сервера, передать их назад в VB, чтоб отобразить в EditBox'е например (event)
короче, сделать выходяший метод
OnData([in] BSTR Data)
чтоб VB мог данные ловить

Dasar

Создаешь новый интерфейс в idl-файле с методом OnData (пусть будет IMyData)
Создаешь Atl Simple Object (у него тыкаешь галочку "Support Connection Points" (или что-то такое (пусть будет CMyData)
Созданный объект наследуешь от
IConnectionPointImpl<CMyData, IID_IMyData>
Прописываешь мапы
BEGIN_COM_MAP(CMyData)
COM_INTERFACE_ENTRY_IMPL(IConnectionPointContainer)
END_COM_MAP
BEGIN_CONNECTION_POINT_MAP(CMyData)
CONNECTION_POINT_ENTRY(IID_IMyData)
END_CONNECTION_POINT_MAP
Реализуешь метод FireOnChangeData, который и дергаешь по мере необходимости
Оставить комментарий
Имя или ник:
Комментарий: