OEMCUIPPARAM 구조체(printoem.h)

OEMCUIPPARAM 구조체는 사용자 인터페이스 플러그 인의 IPrintOemUI::CommonUIProp 메서드에 대한 입력 매개 변수로 사용됩니다.

구문

typedef struct _OEMCUIPPARAM {
  DWORD           cbSize;
  POEMUIOBJ       poemuiobj;
  HANDLE          hPrinter;
  PWSTR           pPrinterName;
  HANDLE          hModule;
  HANDLE          hOEMHeap;
  PDEVMODE        pPublicDM;
  PVOID           pOEMDM;
  DWORD           dwFlags;
  POPTITEM        pDrvOptItems;
  DWORD           cDrvOptItems;
  POPTITEM        pOEMOptItems;
  DWORD           cOEMOptItems;
  PVOID           pOEMUserData;
  OEMCUIPCALLBACK OEMCUIPCallback;
} *POEMCUIPPARAM, OEMCUIPPARAM;

멤버

cbSize

OEMCUIPPARAM 구조체의 크기입니다. Unidrv 또는 Pscript5 드라이버에서 제공합니다.

poemuiobj

OEMUIOBJ 구조체에 대한 포인터입니다.

hPrinter

프린터에 대한 핸들입니다. Unidrv 또는 Pscript5 드라이버에서 제공합니다.

pPrinterName

프린터 이름을 포함하는 문자열입니다. Unidrv 또는 Pscript5 드라이버에서 제공합니다.

hModule

사용자 인터페이스 플러그 인에 대한 핸들입니다. Unidrv 또는 Pscript5 드라이버에서 제공합니다.

hOEMHeap

HeapAlloc 함수(Microsoft Windows SDK 설명서에 설명됨)를 호출하여 공간을 할당할 수 있는 힙에 대한 핸들입니다. Unidrv 또는 Pscript5 드라이버에서 제공합니다.

pPublicDM

프린터의 공용 DEVMODEW 구조체에 대한 포인터입니다. IPrintOemUI::CommonUIProp 메서드의 dwMode 인수가 OEMCUIP_DOCPROP 경우에만 유효합니다. Unidrv 또는 Pscript5 드라이버에서 제공합니다.

pOEMDM

사용자 인터페이스 플러그 인의 프라이빗 DEVMODEW 멤버에 대한 포인터입니다. IPrintOemUI::CommonUIProp 메서드의 dwMode 인수가 OEMCUIP_DOCPROP 경우에만 유효합니다. Unidrv 또는 Pscript5 드라이버에서 제공합니다.

dwFlags

dwMode 매개 변수가 OEMCUIP_DOCPROP 설정된 IPrintOemUI::CommonUIProp에 대한 호출의 경우

프린터 드라이버의 DrvDocumentPropertySheets 함수에서 받은 DOCUMENTPROPERTYHEADER 구조체의 fMode 멤버 내용을 포함합니다.

dwMode 매개 변수가 OEMCUIP_PRNPROP 설정된 IPrintOemUI::CommonUIProp에 대한 호출의 경우

프린터 드라이버의 DrvDevicePropertySheets 함수에서 받은 DEVICEPROPERTYHEADER 구조체의 Flags 멤버 내용을 포함합니다.

pDrvOptItems

프린터 드라이버의 OPTITEM 배열에 대한 포인터입니다. IPrintOemUI::CommonUIProp이 처음 호출되면 유효하지 않습니다. Unidrv 또는 Pscript5 드라이버에서 제공합니다.

cDrvOptItems

pDrvOptItems가 가리키는 배열의 OPTITEM 구조체 수입니다. Unidrv 또는 Pscript5 드라이버에서 제공합니다.

pOEMOptItems

OPTITEM 구조체 배열에 대한 포인터입니다. IPrintOemUI::CommonUIProp 호출자가 제공합니다. IPrintOemUI::CommonUIProp 메서드가 두 번째로 호출되면 이 배열에서 사용자 인터페이스 플러그 인으로 정의된 OPTITEM 구조를 배치해야 하며 cOEMOptItems에 구조 개수를 배치해야 합니다. 배열에 배치된 각 OPTITEM 구조체에 대해 다음을 수행해야 합니다.

  • OPTITEM 구조체의 DMPubID 멤버를 미리 정의된 값 중 하나 또는 DMPUB_USER 보다 큰 값으로 설정합니다. 미리 정의된 값을 사용하는 경우 전체 OPTITEM 배열에서 해당 값이 이미 포함된 구조를 검색해야 하며 해당 OPTIF_HIDE 플래그를 설정해야 합니다.

  • OEMCUIPPARAM 구조체의 hOEMHeap 멤버에 포함된 핸들을 사용하여 Windows SDK HeapAlloc 함수를 호출하여 OPTTYPESOPTPARAMS 구조체에 대한 공간을 할당합니다. 프린터 드라이버가 더 이상 필요하지 않은 경우 이 공간의 할당을 취소합니다.

IPrintOemUI::CommonUIProp이 처음 호출되면 유효하지 않습니다.

cOEMOptItems

pOEMOptItems가 가리키는 배열에 포함된 OPTITEM 구조체의 수입니다. Unidrv 또는 Pscript5 드라이버에서 제공합니다.

IPrintOemUI::CommonUIProp 메서드가 처음 호출되면 cOEMOptItems에 대한 호출자 제공 값이 0입니다. IPrintOemUI::CommonUIProp 메서드는 메서드가 제공하는 OPTITEM 구조체의 수를 나타내기 위해 이 값을 변경해야 합니다. 두 번째로 호출되는 IPrintOemUI::CommonUIProppOEMOptItems가 가리키는 배열에 실제로 추가된 OPTITEM 구조체 수를 제공해야 합니다.

pOEMUserData

IPrintOemUI::CommonUIProp 메서드에서 두 번째로 호출되어 OEMCUIPCallback 함수에 선택적 추가 입력 정보를 제공하는 데 사용됩니다.

OEMCUIPCallback

IPrintOemUI::CommonUIProp 메서드에서 두 번째로 호출되어 OEMCUIPCALLBACK 형식의 콜백 함수 주소를 반환하는 데 사용됩니다.

설명

사용자 인터페이스 플러그 인은 이 구조체의 주소를 IPrintOemUI::CommonUIProp 메서드와 OEMCUIPCALLBACK 형식 콜백 함수 모두에 대한 입력 인수로 받습니다.

이 구조체 및 관련 함수의 사용에 대한 자세한 내용은 사용자 인터페이스 플러그 인을 참조하세요.

요구 사항

요구 사항
헤더 printoem.h(Printoem.h 포함)