Метод IDispenserManager::RegisterDispenser (comsvcs.h)
Регистрирует диспенсер ресурсов в диспетчере диспенсера.
Синтаксис
HRESULT RegisterDispenser(
[in] IDispenserDriver *__MIDL__IDispenserManager0000,
[in] LPCOLESTR szDispenserName,
[out] IHolder **__MIDL__IDispenserManager0001
);
Параметры
[in] __MIDL__IDispenserManager0000
Интерфейс IDispenserDriver , который диспенсер ресурсов предлагает диспетчеру диспенсера для последующего уведомления распределителя ресурсов.
[in] szDispenserName
Понятное имя диспенсера ресурсов для отображения администратора.
[out] __MIDL__IDispenserManager0001
Интерфейс IHolder , созданный для диспенсера ресурсов.
Возвращаемое значение
Если метод выполнен успешно, возвращаемое значение будет S_OK. В противном случае это E_FAIL.
Комментарии
Диспенсер ресурсов уведомляет диспетчера диспенсеров о том, что он запущен и готов принимать уведомления об этом интерфейсе IDispenserDriver . Затем диспетчер диспенсера создает держатель для этого нового диспенсера ресурсов и возвращает его в диспенсер ресурсов.
Этот метод не вызывает AddRef для объекта pDispenserDriver , но IHolder::Close выполняет выпуск в pDispenserDriver. Это может привести к преждевременному уничтожению объекта "Диспенсер ресурсов". Чтобы предотвратить это преждевременное уничтожение, вызывающий объект IDispenserManager::RegisterDispenser должен явно вызвать AddRef для объекта pDispenserDriver .
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | comsvcs.h |