Re[4]: Передача объекта в JScript из ActiveX (C++)
От: WizardOZ  
Дата: 15.03.10 02:05
Оценка:
Здравствуйте, Vi2, Вы писали:

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


WOZ>>Подскажите пожалуйста каким образом нужно объявить кокласс?. Просто с COM моделью познакомился недавно, и все это программирование на основе интерфейсом мне еще не до конца понятно. Можно ли как-то по другому передать объект в JavaScript? И если возможно, то хотя бы какой-нибудь небольшой пример для понимания процесса.


Vi2>Да вроде с коклассом у тебя всё в порядке (ну или относительно всё в порядке, поскольку идеал в коде не достижим). Проблема в реализации свойства. Вот приемлемый вариант (для BSTR desc:

Vi2>
Vi2>STDMETHODIMP CShape::get_Description(/*[out,retval]*/ BSTR* pVal)
Vi2>{
Vi2>//    *pVal = desc;
Vi2>    *pVal = SysAllocString(desc); // делаем копию и передаем клиенту
Vi2>    return S_OK;
Vi2>}

Vi2>STDMETHODIMP CShape::put_Description(/*[in]*/ BSTR newVal)
Vi2>{
Vi2>//    desc = newVal;
Vi2>    desc = SysAllocString(newVal); // делаем копию и сохраняем у себя
Vi2>    return S_OK;
Vi2>}
Vi2>

Vi2>Посмотри Передача BSTR в ActiveX компонент на VC++ 6
Автор: EM
Дата: 04.05.04
или поищи на сайте слова "in out клиент сервер" для более полной информации.


Спасибо огромное. Протестировал работу в IE 6.0, 8.0, полет нормальный.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.