структура 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) |
См. также раздел
IWiaUIExtension2::D eviceDialog