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


структура DEVICEDIALOGDATA2 (wiadevd.h)

Структура DEVICEDIALOGDATA2 содержит все данные, необходимые для реализации диалогового окна настраиваемого устройства.

Синтаксис

typedef struct tagDEVICEDIALOGDATA2 {
  DWORD     cbSize;
  IWiaItem2 *pIWiaItemRoot;
  DWORD     dwFlags;
  HWND      hwndParent;
  BSTR      bstrFolderName;
  BSTR      bstrFilename;
  LONG      lNumFiles;
  BSTR      *pbstrFilePaths;
  IWiaItem2 *pWiaItem;
} DEVICEDIALOGDATA2, *LPDEVICEDIALOGDATA2, *PDEVICEDIALOGDATA2;

Члены

cbSize

Задает размер этой структуры (в байтах).

pIWiaItemRoot

Указывает на интерфейс IWiaItem2 , представляющий допустимый корневой элемент в дереве элементов приложения.

dwFlags

Указывает флаги, передаваемые IWiaItem2::D eviceDlg и IWiaDevMgr2::GetImageDlg вызывающей программой. Возможные значения этого элемента: WIA_DEVICE_DIALOG_SINGLE_IMAGE и WIA_DEVICE_DIALOG_USE_COMMON_UI (определенные в файле заголовка Wiadef.h).

hwndParent

Указывает дескриптор родительского окна диалогового окна.

bstrFolderName

Строка типа BSTR , содержащая имя папки назначения, в которую передаются файлы, полученные из элементов WIA.

bstrFilename

Строка типа BSTR , содержащая шаблон имени файла, который будет использоваться для файлов, передаваемых из элементов WIA в целевую папку, назначенную bstrFolderName. Можно создать произвольное количество уникальных имен файлов, добавив дополнительные символы в шаблон имени файла. Дополнительные сведения о шаблонах имен файлов см. в разделах PathMakeUniqueName и PathYetAnotherMakeUniqueName.

lNumFiles

Число строк, записанных в массив pbstrFilePaths .

pbstrFilePaths

Указатель на массив указателей BSTR . Каждый элемент массива указывает на BSTR , содержащий имя назначения файла, который был успешно передан в папку, определяемую bstrFolderName. Метод должен выделить хранилище для этого элемента. Дополнительные сведения см. в следующем разделе Примечаний .

pWiaItem

Указатель на интерфейс IWiaItem2 элемента WIA, который передает данные в файл или файлы с именем в массиве bstrFilePaths .

Комментарии

Структура DEVICEDIALOGDATA2 используется методом IWiaUIExtension2::D eviceDialog .

Метод DeviceDialog должен выделить массив указателей BSTR , указанный в pbstrFilePaths , путем вызова функции CoTaskMemAlloc , и выделить каждую строку, на которую указывает массив, вызвав функцию SysAllocString . Вызывающая программа отвечает за освобождение хранилища для массива указателей и строк.

Чтобы сохранить ссылку на интерфейс IWiaItem2 , метод DeviceDialog должен вызвать метод IUnknown::AddRef в интерфейсе перед возвратом из вызова.

Чтобы получить доступ к сведениям о свойствах объекта IWiaItem2 , метод DeviceDialog должен запросить объект для получения интерфейса IWiaPropertyStorage . Чтобы передать данные из объекта IWiaItem2 , метод DeviceDialog должен запросить объект для получения интерфейса IWiaTransfer .

Требования

Требование Значение
Заголовок wiadevd.h (включая Wiadevd.h)

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

CoTaskMemAlloc

IUnknown::AddRef

IWiaDevMgr2::GetImageDlg

IWiaItem2

IWiaItem2::D eviceDlg

IWiaPropertyStorage

IWiaTransfer

IWiaUIExtension2::D eviceDialog

PathMakeUniqueName

Функция PathYetAnotherMakeUniqueName

SysAllocString