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 eviceDlgIWiaDevMgr2::GetImageDlg 에 전달된 플래그를 지정합니다. 이 멤버에 대한 가능한 값은 WIA_DEVICE_DIALOG_SINGLE_IMAGE 및 WIA_DEVICE_DIALOG_USE_COMMON_UI(헤더 파일 Wiadef.h에 정의됨)입니다.

hwndParent

대화 상자의 부모 창에 대한 핸들을 지정합니다.

bstrFolderName

WIA 항목에서 가져온 파일이 전송되는 대상 폴더의 이름을 포함하는 BSTR 형식의 문자열입니다.

bstrFilename

WIA 항목에서 bstrFolderName으로 지정된 대상 폴더로 전송되는 파일에 사용할 파일 이름 템플릿을 포함하는 BSTR 형식의 문자열입니다. 파일 이름 템플릿에 추가 문자를 추가하여 임의의 수의 고유한 파일 이름을 만들 수 있습니다. 파일 이름 템플릿에 대한 자세한 내용은 PathMakeUniqueNamePathYetAnotherMakeUniqueName을 참조하세요.

lNumFiles

pbstrFilePaths 배열에 기록된 문자열 수입니다.

pbstrFilePaths

BSTR 포인터 배열에 대한 포인터입니다. 각 배열 요소는 bstrFolderName으로 식별된 폴더로 성공적으로 전송된 파일의 대상 이름을 포함하는 BSTR을 가리킵니다. 메서드는 이 멤버에 대한 스토리지를 할당해야 합니다. 자세한 내용은 다음 설명 섹션을 참조 하세요 .

pWiaItem

bstrFilePaths 배열에 있는 파일 또는 파일로 데이터를 전송하는 WIA 항목의 IWiaItem2 인터페이스에 대한 포인터입니다.

설명

DEVICEDIALOGDATA2 구조체는 IWiaUIExtension2::D eviceDialog 메서드에서 사용됩니다.

DeviceDialog 메서드는 CoTaskMemAlloc 함수를 호출하여 pbstrFilePaths에 지정된 BSTR 포인터 배열을 할당해야 하며, 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