IPrintOemUI::CommonUIProp 메서드(prcomoem.h)
IPrintOemUI::CommonUIProp
메서드를 사용하면 사용자 인터페이스 플러그 인이 기존 프린터 속성 시트 페이지를 수정할 수 있습니다.
구문
HRESULT CommonUIProp(
DWORD dwMode,
POEMCUIPPARAM pOemCUIPParam
);
매개 변수
dwMode
수정해야 하는 속성 시트 페이지를 나타내는 호출자 제공 정수 상수입니다. 다음 상수는 유효합니다.
값 | 정의 |
---|---|
OEMCUIP_DOCPROP | 메서드를 호출하여 문서 속성 시트의 레이아웃, 용지/품질 또는 고급 페이지를 수정합니다. |
OEMCUIP_PRNPROP | 메서드가 호출되어 프린터 속성 시트의 디바이스 설정 페이지를 수정합니다. |
pOemCUIPParam
OEMCUIPPARAM 구조체에 대한 호출자 제공 포인터입니다.
반환 값
메서드는 다음 값 중 하나를 반환해야 합니다.
반환 코드 | Description |
---|---|
|
작업에 성공했습니다. |
|
작업이 실패했습니다. |
|
메서드가 구현되지 않았습니다. |
설명
사용자 인터페이스 플러그 인의 IPrintOemUI::CommonUIProp
메서드가 호출되면 기존 프린터 속성 시트 페이지를 수정하기 위해 사용자 지정된 속성 시트 옵션 항목을 반환해야 합니다.
메서드는 IPrintOemUI::CommonUIProp
프린터 드라이버의 프린터 인터페이스 DLL에 의해 호출 됩니다. 메서드는 옵션 값에 대한 사용자 수정을 처리하기 위한 콜백 함수와 함께 속성 시트 항목을 설명하는 OPTITEM 구조의 배열을 제공해야 합니다.
각 속성 시트에 대해 메서드를 두 번 호출해야 합니다. 메서드의 dwMode 매개 변수 값은 프린터 속성 시트 또는 문서 속성 시트를 변경하기 위해 호출되는지 여부를 나타냅니다.
처음 호출될 때 메서드는 추가할 OPTITEM 구조체 수를 반환해야 합니다. 이 숫자는 OEMCUIPPARAM 구조체의 cOEMOptItems 멤버에 배치해야 합니다. 그런 다음 프린터 인터페이스 DLL은 지정된 수의 OPTITEM을 저장할 수 있는 충분한 메모리를 할당하고 다시 호출 IPrintOemUI::CommonUIProp
합니다.
두 번째로 호출되면 메서드는 IPrintOemUI::CommonUIProp
다음을 수행해야 합니다.
- 옵션 설명으로 OPTITEM 구조체의 드라이버 제공 배열을 채웁니다. 이 배열은 OEMCUIPPARAM 구조체의 pOEMOptItems 멤버로 가리키며 할당된 배열 요소의 수는 구조체의 cOEMOptItems 멤버에 포함됩니다. (OPTITEM 멤버 값을 지정하는 방법에 대한 자세한 내용은 OEMCUIPPARAM 구조체의 pOEMOptItems 멤버에 대한 설명을 참조하세요.)
- OEMCUIPPARAM 구조체의 cOEMOptItems 멤버에 숫자를 배치하여 OPTITEM 배열에 추가된 구조체 수를 반환합니다.
- OEMCUIPPARAM 구조체의 OEMCUIPCallback 멤버에서 콜백 함수의 주소를 반환합니다. 이 콜백 함수는 사용자가 속성 시트 페이지를 수정할 때 호출됩니다. 콜백 함수는 OEMCUIPCALLBACK 형식이어야 합니다.
-
필요에 따라 OEMCUIPPARAM 구조체의 pOEMUserData 멤버에 배치하여 프라이빗 데이터 구조체의 주소를 반환합니다. 구조체의 OEMCUIPCallback 멤버에 의해 지정된 콜백 함수는 OEMCUIPPARAM 구조체의 주소를 입력 매개 변수로 수신하므로 개인 데이터의 주소를 가져올 수 있습니다.
OEMCUIPPARAM 구조체의 hOEMHeap 멤버에 포함된 핸들을 사용하여 Microsoft Windows SDK HeapAlloc 함수를 호출하여 프라이빗 데이터 구조의 공간을 할당해야 합니다.
IPrintOemUI::CommonUIProp
플러그 인이 설치를 위해 지정된 순서대로 메서드가 호출됩니다.
자세한 내용은 Driver-Supplied 속성 시트 페이지 수정을 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 데스크톱 |
머리글 | prcomoem.h(Prcomoem.h 포함) |