Поиск:

Ответ в темуСоздание новой темы Создание опроса
> _com_ptr_t пример использования, покажите пожалуйста 
:(
    Опции темы
nerdy_weirdie
Дата 5.11.2010, 23:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 179
Регистрация: 16.1.2007

Репутация: нет
Всего: нет



Решил попробовать использовать std для работы с комом. И обнаружил что в сети напрочь нету реальных рабочих примеров кода.
Делаю всё как описано в мсдне http://msdn.microsoft.com/en-us/library/h3...v=VS.80%29.aspx
Код
_com_ptr_t<IHTMLElement> pElem(pDisp);

Но что-то темплейт не кушает этот интерфейс
Код
Error    2    error C2039: 'Interface' : is not a member of 'IHTMLElement'    c:\program files\microsoft visual studio 8\vc\include\comip.h    66

 smile 
PM MAIL   Вверх
Alexeis
Дата 6.11.2010, 00:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: нет
Всего: 459



Header: comip.h

Lib: comsuppw.lib or comsuppwd.lib (see /Zc:wchar_t (wchar_t Is Native Type) for more information)

подключено?


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Alexeis
Дата 6.11.2010, 01:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: нет
Всего: 459



Я у себя использую 
#include <atlbase.h>
CComPtr<>


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
alexvs11
Дата 6.11.2010, 01:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


hell is here
**


Профиль
Группа: Участник
Сообщений: 518
Регистрация: 21.8.2010

Репутация: нет
Всего: 10



Цитата(Alexeis @  6.11.2010,  01:16 Найти цитируемый пост)
CComPtr<>

так да, всю жизнь его используют
_com_ptr_t небось какой-нибудь внутренний объект
PM MAIL   Вверх
nerdy_weirdie
Дата 6.11.2010, 13:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 179
Регистрация: 16.1.2007

Репутация: нет
Всего: нет



Alexis, ошибка происходит при генерации класса по темплейту, до линковки. Проект не должен использовать ATL, потому и разбираюсь с STL.
alexvs11, объект вовсе не внутренний, обычный STL.
PM MAIL   Вверх
Alexeis
Дата 6.11.2010, 14:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: нет
Всего: 459



Цитата(nerdy_weirdie @  6.11.2010,  14:46 Найти цитируемый пост)
Проект не должен использовать ATL, потому и разбираюсь с STL.

  Это не ATL как таковой. Не требует ни каких либ. Это чисто заголовочный файл с шаблоном. К атл он мало что имеет, скорее вспомогательный.


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
jonie
Дата 6.11.2010, 19:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 5
Всего: 118



сдается мне надо писать так:
Код

_com_ptr_t< _com_IIID<IHTMLElement, __uuidof(IHTMLElement)> > pElem = pDisp;
или использовать макрос _COM_SMARTPTR_TYPEDEF


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: COM/DCOM/ActiveX/ATL/CORBA | Следующая тема »


 




[ Время генерации скрипта: 0.0666 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.