Метод IWiaDevMgr::GetImageDlg (wia_xp.h)
Метод IWiaDevMgr::GetImageDlg отображает одно или несколько диалоговых окон, которые позволяют пользователю получить изображение с устройства windows Image Acquisition (WIA) и записать его в указанный файл. Этот метод объединяет функциональные возможности IWiaDevMgr::SelectDeviceDlg , чтобы полностью инкапсулировать получение изображений в одном вызове API.
Синтаксис
HRESULT GetImageDlg(
[in] HWND hwndParent,
[in] LONG lDeviceType,
[in] LONG lFlags,
[in] LONG lIntent,
[in] IWiaItem *pItemRoot,
[in] BSTR bstrFilename,
[in, out] GUID *pguidFormat
);
Параметры
[in] hwndParent
Тип: HWND
Дескриптор окна, которому принадлежит диалоговое окно Получение изображения .
[in] lDeviceType
Тип: LONG
Указывает тип используемого устройства WIA. Для параметра задано значение StiDeviceTypeDefault, StiDeviceTypeScanner или StiDeviceTypeDigitalCamera.
[in] lFlags
Тип: LONG
Задает поведение диалогового окна. Можно задать следующие значения:
Flag | Значение |
---|---|
0 | Поведение по умолчанию. |
WIA_SELECT_DEVICE_NODEFAULT | Принудительное отображение этого метода в диалоговом окне Выбор устройства . Дополнительные сведения см. в разделе Примечания этой справочной страницы. |
WIA_DEVICE_DIALOG_SINGLE_IMAGE | Ограничьте выбор изображения одним изображением в диалоговом окне получения образа устройства. |
WIA_DEVICE_DIALOG_USE_COMMON_UI | Используйте системный пользовательский интерфейс , если он доступен, а не предоставленный поставщиком пользовательский интерфейс. Если пользовательский интерфейс системы недоступен, используется пользовательский интерфейс поставщика. Если пользовательский интерфейс недоступен, функция возвращает E_NOTIMPL. |
[in] lIntent
Тип: LONG
Указывает тип данных, которые должно представлять изображение. Список значений намерений изображений см. в разделе Константы намерения изображений.
[in] pItemRoot
Тип: IWiaItem*
Указатель на интерфейс иерархического дерева объектов IWiaItem , возвращаемых IWiaDevMgr::CreateDevice.
[in] bstrFilename
Тип: BSTR
Указывает имя файла, в который записываются данные изображения.
[in, out] pguidFormat
Тип: GUID*
На входных данных содержит указатель на GUID, указывающий используемый формат. В выходных данных содержит используемый формат. Передайте IID_NULL, чтобы использовать формат по умолчанию.
Возвращаемое значение
Тип: HRESULT
IWiaDevMgr::GetImageDlg возвращает S_FALSE, если пользователь отменяет выбор устройства или получение изображений, WIA_S_NO_DEVICE_AVAILABLE, если устройство WIA в настоящее время недоступно, E_NOTIMPL, если пользовательский интерфейс недоступен, и S_OK, если данные успешно переданы.
IWiaDevMgr::GetImageDlg возвращает значение, указанное в коде ошибок, или стандартную ошибку COM, если она завершается сбоем по какой-либо причине, кроме указанной.
Комментарии
При вызове этого метода отображается диалоговое окно, позволяющее пользователям получать изображения. Он также может отобразить диалоговое окно Выбор устройства , созданное методом IWiaDevMgr::SelectDeviceDlg .
Если приложение передает значение NULL для параметра pItemRoot , IWiaDevMgr::GetImageDlg отображает диалоговое окно Выбор устройства , позволяющее пользователю выбрать устройство ввода WIA. Если приложение указывает устройство ввода WIA путем передачи указателя на дерево элементов устройства с помощью параметра pItemRoot , IWiaDevMgr::GetImageDlg не отображает диалоговое окно Выбор устройства . Вместо этого для получения изображения будет использоваться указанное устройство ввода.
При использовании диалогового окна Выбор устройства приложения могут указывать типы устройств ввода WIA. Для этого необходимо задать для параметра pItemRootзначение NULL и передать соответствующие константы через параметр lDeviceType . Если имеется несколько устройств указанного типа, IWiaDevMgr::GetImageDlg отображает диалоговое окно Выбор устройства , позволяющее пользователю выбрать устройство, которое будет использоваться.
Если IWiaDevMgr::GetImageDlg находит только одно соответствующее устройство, диалоговое окно Выбор устройства не отображается. Вместо этого будет выбрано соответствующее устройство. Вы можете переопределить это поведение и заставить IWiaDevMgr::GetImageDlg отобразить диалоговое окно Выбор устройства , передав WIA_SELECT_DEVICE_NODEFAULT в качестве значения для параметра lFlags .
Приложениям рекомендуется сделать выбор устройств и изображений доступными с помощью пункта меню с именем "Из сканера" или "Камера " в меню Файл .
Диалоговое окно должно иметь достаточные права на папку bstrFilename , чтобы сохранить файл с уникальным именем. Папка также должна быть защищена с помощью списка управления доступом (ACL), так как она содержит данные пользователя.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional, Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | wia_xp.h (включая Wia.h) |
Библиотека | Wiaguid.lib |
DLL | Wiaservc.dll |