COMPROPSHEETUI 구조체(compstui.h)

함수 코드가 CPSFUNC_ADD_PCOMPROPSHEETUI 경우 COMPROPSHEETUI 구조체는 CPSUI의 ComPropSheet 함수에 대한 입력 매개 변수로 사용됩니다. ComPropSheet의 호출자가 모든 구조체 멤버를 제공해야 합니다.

구문

typedef struct _COMPROPSHEETUI {
  WORD           cbSize;
  WORD           Flags;
  HINSTANCE      hInstCaller;
  LPTSTR         pCallerName;
  ULONG_PTR      UserData;
  LPTSTR         pHelpFile;
  _CPSUICALLBACK pfnCallBack;
  POPTITEM       pOptItem;
  PDLGPAGE       pDlgPage;
  WORD           cOptItem;
  WORD           cDlgPage;
  ULONG_PTR      IconID;
  LPTSTR         pOptItemName;
  WORD           CallerVersion;
  WORD           OptItemVersion;
  ULONG_PTR      dwReserved[4];
} COMPROPSHEETUI, *PCOMPROPSHEETUI;

멤버

cbSize

호출자가 제공한 COMPROPSHEETUI 구조체의 크기(바이트)입니다.

Flags

다음 목록에 설명된 대로 선택적 호출자 제공 비트 플래그:

CPSUIF_ABOUT_CALLBACK

설정된 경우 페이지의 콜백 함수(구조체의 pfnCallback 멤버가 가리키는)는 CPSUICB_REASON_ABOUT 지원하므로 사용자가 페이지의 정보 단추를 클릭하면 CPSUI가 콜백 함수를 호출합니다. (CPSUI는 각 트리 뷰 루트 노드에 대해 정보 단추를 제공합니다.)

CPSUIF_ICONID_AS_HICON

설정하면 구조체의 IconID 멤버에 아이콘 핸들이 포함됩니다.

설정하지 않으면 IconID 멤버에 아이콘 리소스 식별자가 포함됩니다.

CPSUIF_UPDATE_PERMISSION

설정하면 사용자가 페이지의 옵션 값을 수정할 수 있습니다.

hInstCaller

DLL의 진입점 함수에서 수신한 호출자 제공 모듈 instance 핸들입니다.

pCallerName

애플리케이션의 이름을 나타내는 NULL로 끝나는 텍스트 문자열에 대한 호출자 제공 포인터입니다. 프린터 인터페이스 DLL의 경우 "PostScript 드라이버"와 같은 드라이버 이름이어야 합니다.

UserData

선택적 호출자 제공 값으로, PFnCallBack에서 가리키는 함수를 호출할 때 CPSUI가 CPSUICBPARAM 구조의 UserData 멤버에 배치합니다.

pHelpFile

도움말 파일의 경로를 나타내는 NULL로 끝나는 텍스트 문자열에 대한 호출자 제공 포인터입니다. 프린터 인터페이스 DLL의 경우 일반적으로 GetPrinterDriver를 호출하여 얻은 도움말 파일 경로입니다.

도움말 파일은 OPTITEM 구조체의 HelpIndex 멤버에 포함된 값으로 인덱싱됩니다.

pfnCallBack

사용자가 페이지의 옵션 값을 수정할 때 CPSUI가 호출하는 _CPSUICALLBACK 형식의 콜백 함수에 대한 호출자 제공 포인터입니다.

pDlgPage가 CPSUI 제공 DLGPAGE 구조를 식별하거나 애플리케이션에서 제공하는 DLGPAGE 구조체의 DlgProc 멤버가 NULL인 경우에만 사용할 수 있습니다.

pOptItem

페이지의 옵션을 설명하는 OPTITEM 구조 배열에 대한 호출자 제공 포인터입니다.

pDlgPage

이 멤버는 속성 시트에 추가할 페이지를 설명하는 DLGPAGE 구조를 지정합니다. 다음 중 하나일 수 있습니다.

  • DLGPAGE 구조체 배열에 대한 포인터입니다.

  • 다음 목록에 설명된 포인터 중 하나입니다. 이러한 포인터는 프린터 인터페이스 DLL에서 사용하기 위해 CPSUI에서 제공하는 미리 정의된 DLGPAGE 구조를 참조합니다.

    • CPSUI_PDLGPAGE_ADVDOCPROP

      탭에서 고급을 읽는 하나의 트리 뷰 페이지를 정의합니다. DrvDocumentPropertySheets 함수에서만 사용합니다.

    • CPSUI_PDLGPAGE_DOCPROP

      탭이 레이아웃, 용지/품질고급인 세 페이지를 정의합니다. 고급 페이지는 트리 뷰입니다. DrvDocumentPropertySheets 함수에서만 사용합니다.

    • CPSUI_PDLGPAGE_PRINTERPROP

      탭이 디바이스 설정을 읽는 하나의 트리 뷰 페이지를 정의합니다. DrvDevicePropertySheets 함수에서만 사용합니다.

    • CPSUI_PDLGPAGE_TREEVIEWONLY

      하나의 트리 뷰 페이지를 정의합니다.

cOptItem

pOptItem에서 가리키는 호출자 제공 OPTITEM 구조체 수입니다.

cDlgPage

pDlgPage에서 가리키는 호출자 제공 DLGPAGE 구조체 수입니다. pDlgPage가 미리 정의된 CPSUI_PDLGPAGE 접두사 구조를 지정하는 경우 사용되지 않습니다.

IconID

호출자가 제공하는 는 다음 중 하나일 수 있습니다.

  • 아이콘 리소스 식별자입니다. 애플리케이션에서 정의하거나 CPSUI에서 제공하는 IDI_CPSUI 접두사 아이콘 리소스 식별자 중 하나일 수 있습니다.

  • 아이콘 핸들입니다. 핸들이 지정된 경우 Flags 멤버에서 CPSUIF_ICONID_AS_HICON 설정해야 합니다.

지정한 아이콘은 속성 시트 페이지의 트리 뷰의 루트 노드에 표시됩니다.

pOptItemName

속성 시트 페이지의 트리 뷰의 루트 노드에 표시할 NULL로 끝나는 문자열에 대한 호출자 제공 포인터입니다. 프린터 인터페이스 DLL의 경우 이 문자열은 일반적으로 "HP 4si"와 같은 프린터 디바이스 유형을 나타냅니다.

CallerVersion

호출하는 애플리케이션의 현재 버전을 나타내는 호출자 제공 버전 번호입니다. 높은 바이트는 주 버전을 식별하고, 하위 바이트는 부 버전입니다. 예를 들어 0x310 CallerVersion 값은 호출자 버전 번호 3.16을 지정합니다. 사용자가 페이지의 정보 단추를 클릭하면 버전 번호가 표시됩니다.

OptItemVersion

루트 수준 옵션 항목의 현재 버전을 나타내는 호출자 제공 버전 번호입니다. 프린터 인터페이스 DLL의 경우 일반적으로 프린터 디바이스 버전을 나타냅니다. 높은 바이트는 주 버전을 식별하고, 하위 바이트는 부 버전입니다. 예를 들어 0x3ff OptItemVersion 값은 호출자 버전 번호 3.255를 지정합니다. 사용자가 페이지의 정보 단추를 클릭하면 버전 번호가 표시됩니다.

dwReserved[4]

예약되어 있습니다. 이 배열은 0으로 설정해야 합니다.

요구 사항

요구 사항
헤더 compstui.h(Compstui.h 포함)