Поделиться через


Метод IStillImageW::CreateDevice (sti.h)

Метод IStillImage::CreateDevice создает экземпляр COM-объекта, который определяет интерфейс COM IStiDevice, и возвращает указатель на интерфейс .

Синтаксис

HRESULT CreateDevice(
  [in]           LPWSTR     pwszDeviceName,
                 DWORD      dwMode,
  [out]          PSTIDEVICE *pDevice,
  [in, optional] LPUNKNOWN  punkOuter
);

Параметры

[in] pwszDeviceName

Предоставленный вызывающим абонентом указатель на строку, представляющую имя внутреннего устройства, полученную путем вызова метода IStillImage::GetSTILaunchInformation или IStillImage::GetDeviceList.

dwMode

Значение константы, предоставленное вызывающим абонентом, указывающее режимы передачи , в которых будет использоваться устройство. Допустимы следующие значения.

Режим Описание
STI_DEVICE_CREATE_BOTH Устройство открывается как для получения состояния, так и для передачи данных.
STI_DEVICE_CREATE_DATA Устройство открывается только для передачи данных.
STI_DEVICE_CREATE_STATUS Устройство открывается только для получения сведений о состоянии.

[out] pDevice

Получает указатель на интерфейс COM IStiDevice.

[in, optional] punkOuter

Необязательный, предоставленный вызывающим объектом указатель на "управление неизвестным" для агрегирования объектов. См. следующий раздел Примечаний .

Возвращаемое значение

Если операция выполнена успешно, метод возвращает S_OK. В противном случае возвращается один из кодов ошибок с префиксом STIERR, определенных в файле stierr.h.

Комментарии

Чтобы приложение использовало интерфейс IStiDevice , оно должно сначала вызвать IStillImage::StiCreateInstance , чтобы получить указатель на интерфейс IStillImage , а затем вызвать IStillImage::CreateDevice , чтобы получить указатель на интерфейс IStiDevice . Указатель, полученный в pDevice , используется впоследствии при вызове методов IStiDevice , как показано в примере кода изображения, для получения доступа к указанному устройству.

Если вы хотите создать агрегатный COM-объект, включающий IStiDevice, необходимо указать указатель на элемент управления unknown в punkOuter. В большинстве случаев вы не будете создавать агрегатный объект, поэтому punkOuter должен иметь значение NULL. Агрегирование объектов и управление неизвестными описаны в документации по Microsoft Windows SDK и спецификации объектной модели компонентов.

Требования

Требование Значение
Целевая платформа Персональный компьютер
Верхняя часть sti.h (включая Sti.h)

См. также раздел

IStiDevice::Release

IStillImageW