хочется странного
От: Tagus  
Дата: 13.02.02 20:59
Оценка:
Разыскиваю пример кода с вызовом OleLoadPicture из C (без плюсов). Никому такое не попадалось?
Re: хочется странного
От: Alex Fedotov США  
Дата: 13.02.02 22:06
Оценка:
Здравствуйте Tagus, Вы писали:

T>Разыскиваю пример кода с вызовом OleLoadPicture из C (без плюсов). Никому такое не попадалось?


Берешь любой пример на C++ и заменяешь вызовы вида

pPicture->get_Width(&nWidth);


на

pPicture->lpVtbl->get_Width(pPicture, &nWidth);
-- Alex Fedotov
Re[2]: хочется странного
От: Tagus  
Дата: 14.02.02 19:36
Оценка:
Здравствуйте Alex Fedotov, Вы писали:

AF>Берешь любой пример на C++ и заменяешь вызовы вида

AF>pPicture->get_Width(&nWidth);
AF>на
AF>pPicture->lpVtbl->get_Width(pPicture, &nWidth);

А Vtbl, ведь, наверное, инициализировать надо?
Re[3]: хочется странного
От: Alex Fedotov США  
Дата: 14.02.02 19:40
Оценка:
Здравствуйте Tagus, Вы писали:

AF>>Берешь любой пример на C++ и заменяешь вызовы вида

AF>>pPicture->get_Width(&nWidth);
AF>>на
AF>>pPicture->lpVtbl->get_Width(pPicture, &nWidth);

T>А Vtbl, ведь, наверное, инициализировать надо?


Нет, он инициализируется функцией, которая создает объект Picture.

IPicture * pPicture;

hRes = OleLoadPicturePath(pszPath, NULL, 0, 0, IID_IPicture, (PVOID *)&pPicture);
if (FAILED(hRes))
    // ...

LONG nWidth;
pPicture->lpVtbl->get_Width(pPicture, &nWidth);
-- Alex Fedotov
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.