Тип BSTR (стандартный строковой тип COM) определяется в С++ через typedef как переопределение указателя определённого типа. Какого?
Тип BSTR (стандартный строковой тип COM) определяется в С++ через typedef как переопределение указателя определённого типа. Какого?
Когда требуется создание нового интерфейса с новым IID?
Когда требуется создание нового интерфейса с новым IID?
Используется ли в COM-технологии полиморфизм?
Используется ли в COM-технологии полиморфизм?
Закончите утверждение: Связь между клиентом и сервером COM называется локальной (out-of-process), когда.
Варианты ответа:
1) Сервер физически расположен на другой машине по отношению к клиенту"
2) Клиент и сервер находятся на одной физической машине, но загружены в разные области памяти"
3) Сервер загружен в ту же область памяти, что и клиент, которого он обслуживает"
4) Нет верных утерждений
Закончите утверждение: Связь между клиентом и сервером COM называется локальной (out-of-process), когда.
Варианты ответа:
1) Сервер физически расположен на другой машине по отношению к клиенту"
2) Клиент и сервер находятся на одной физической машине, но загружены в разные области памяти"
3) Сервер загружен в ту же область памяти, что и клиент, которого он обслуживает"
4) Нет верных утерждений
Какие методы содержит интерфейс IUnknown?
Какие методы содержит интерфейс IUnknown?
Какие Методы содержит интерфейс IDispatch?
Какие Методы содержит интерфейс IDispatch?
На каком языке принято писать определения интерфейсов при использовании COM?
На каком языке принято писать определения интерфейсов при использовании COM?
Где нужно задать ключевым словом uuid() IID в интерфейсе для успешного создания(.idl)?
// 1
[
// attributes
// 2
]
interface IX: // 3:
{
// 4;
}
Где нужно задать ключевым словом uuid() IID в интерфейсе для успешного создания(.idl)?
// 1
[
// attributes
// 2
]
interface IX: // 3:
{
// 4;
}
Выберите стандартные макросы COM, которые можно использовать для реализации методов интерфейсов в описании коклассов.
Выберите стандартные макросы COM, которые можно использовать для реализации методов интерфейсов в описании коклассов.
Что обозначает в Венгерской Нотации использованой в СОМ выражение pI?
Что обозначает в Венгерской Нотации использованой в СОМ выражение pI?
Может ли быть наследование интерфейса IUnknown виртуальным?
Может ли быть наследование интерфейса IUnknown виртуальным?
Содержат ли интерфейсы данные?
Содержат ли интерфейсы данные?
Какой стандартный интерфейс должны наследовать компоненты COM?
Какой стандартный интерфейс должны наследовать компоненты COM?
Какие из следующих возвращаемых значений означают, что функция выполнилась успешно?
Какие из следующих возвращаемых значений означают, что функция выполнилась успешно?
Что такое smart-pointer?
Варианты ответа:
1) Класс переопределяющий оператор ->. Содержащий указатель на другой объект
2) Класс переопределяющий двойной указатель на базовый класс
3) Класс содержащий указатель на функцию
4) Класс содержащий указатели на все наследуемые классы
Что такое smart-pointer?
Варианты ответа:
1) Класс переопределяющий оператор ->. Содержащий указатель на другой объект
2) Класс переопределяющий двойной указатель на базовый класс
3) Класс содержащий указатель на функцию
4) Класс содержащий указатели на все наследуемые классы
Как smartpointеr'ы упрощают работу с СОМ-компонентами?
Варианты ответа:
1) Не нужно следить за количеством ссылок
2) Не нужно использовать QueryInterface(). Компонент туда добавится автоматически.
3) Не нужно использовать инициализирование библиотеки
4) Smartpointer'ы не вызывают утечку память
Как smartpointеr'ы упрощают работу с СОМ-компонентами?
Варианты ответа:
1) Не нужно следить за количеством ссылок
2) Не нужно использовать QueryInterface(). Компонент туда добавится автоматически.
3) Не нужно использовать инициализирование библиотеки
4) Smartpointer'ы не вызывают утечку память
Куда требуется добавить независимо друг от друга строки чтобы код выполнялся?
IUnknown *pUnknown;
IX *pIX = NULL;
HRESULT hr = pUnknown->QueryInterface(IID,(void**)&pIX);
if(SUCCECED(hr))
{
//1
pIX->function();// работа с IX;
//2
}
//3
pUnknown->function();
//4;
Куда требуется добавить независимо друг от друга строки чтобы код выполнялся?
IUnknown *pUnknown;
IX *pIX = NULL;
HRESULT hr = pUnknown->QueryInterface(IID,(void**)&pIX);
if(SUCCECED(hr))
{
//1
pIX->function();// работа с IX;
//2
}
//3
pUnknown->function();
//4;
Может ли быть наследование интерфейса IUnknown виртуальным?
Может ли быть наследование интерфейса IUnknown виртуальным?
Какая функция используется для инициализации СОМ-библиотеки?
Какая функция используется для инициализации СОМ-библиотеки?
В каких строчках, с точки зрения технологии СОМ, содержатся ошибки?
IUnknown* pIUnknown = CreateInstance();
IX* pIX = NULL;
pIUnknown->QueryInterface(IID_IX, (void**)&pIX);
pIX->Fx();
IX* pIX2 = pIX;
pIUnknown->AddRef(); // 1
pIX2->Fx();
pIX2->Release(); // 2
pIUnknown->Release(); // 3
pIUnknown->Release();
В каких строчках, с точки зрения технологии СОМ, содержатся ошибки?
IUnknown* pIUnknown = CreateInstance();
IX* pIX = NULL;
pIUnknown->QueryInterface(IID_IX, (void**)&pIX);
pIX->Fx();
IX* pIX2 = pIX;
pIUnknown->AddRef(); // 1
pIX2->Fx();
pIX2->Release(); // 2
pIUnknown->Release(); // 3
pIUnknown->Release();