다음을 통해 공유


ExtDeviceMode 함수(winspool.h)

ExtDeviceMode 함수는 16비트 애플리케이션과의 호환성을 위해서만 제공됩니다. 이 요구 사항이 없는 프린터 드라이버는 Microsoft Windows SDK 설명서에 설명된 DocumentProperties 함수를 대신 사용해야 합니다.

ExtDeviceMode 함수는 지정된 그래픽 드라이버에 대한 프린터 초기화 정보를 검색하거나 수정하거나 지정된 프린터에 대해 드라이버 제공 프린터 구성 속성 시트를 표시합니다.

구문

LONG ExtDeviceMode(
  [in, optional] HWND       hWnd,
  [in, optional] HANDLE     hInst,
  [in, out]      LPDEVMODEA pDevModeOutput,
  [in, optional] LPSTR      pDeviceName,
  [in, optional] LPSTR      pPort,
  [in, optional] LPDEVMODEA pDevModeInput,
  [in, optional] LPSTR      pProfile,
                 DWORD      fMode
);

매개 변수

[in, optional] hWnd

프린터 구성 속성 시트의 부모 창에 대한 핸들입니다.

[in, optional] hInst

사용되지 않습니다. 디바이스 드라이버의 모듈 instance 대한 핸들입니다.

[in, out] pDevModeOutput

pDevModeInput 매개 변수가 가리키는 버퍼에 제공된 프린터 구성 데이터를 수신하는 DEVMODE 구조체에 대한 포인터입니다.

[in, optional] pDeviceName

프린터 구성 속성 시트가 표시되는 디바이스의 이름을 포함하는 NULL로 끝나는 문자열에 대한 포인터입니다.

[in, optional] pPort

디바이스가 연결된 포트의 이름(예: LPT1)이 포함된 NULL로 끝나는 문자열에 대한 포인터입니다.

[in, optional] pDevModeInput

운영 체제에서 속성 시트 필드를 초기화하는 데 사용하는 DEVMODE 구조체에 대한 포인터입니다.

이 매개 변수는 fMode 매개 변수에서 DM_IN_BUFFER 플래그가 설정된 경우에만 사용됩니다. DM_IN_BUFFER 설정되지 않은 경우 운영 체제는 프린터의 기본 DEVMODE 구조를 사용합니다.

[in, optional] pProfile

사용되지 않습니다. 초기화 정보가 기록되고 읽혀지는 초기화 파일의 이름을 포함하는 NULL로 끝나는 문자열에 대한 포인터입니다.

fMode

함수가 수행하는 작업을 지정합니다. 이 매개 변수가 0이면 ExtDeviceMode 함수는 프린터 드라이버의 DEVMODE 구조에 필요한 바이트 수를 반환합니다. 그렇지 않으면 이 매개 변수를 다음 플래그 값 중 하나 이상으로 설정할 수 있습니다.

플래그 설명
DM_COPY pDevModeOutput 매개 변수가 가리키는 DEVMODE 구조체에 드라이버의 현재 설정을 씁니다. 호출하는 애플리케이션은 정보를 포함할 수 있을 만큼 큰 버퍼를 할당해야 합니다. 이 플래그가 설정되지 않은 경우 pDevModeOutputNULL일 수 있습니다.
DM_IN_BUFFER 프린터 드라이버의 현재 인쇄 설정을 pDevModeInput 매개 변수가 가리키는 DEVMODE 구조의 설정과 병합합니다. 이 문제는 프롬프트, 복사 또는 업데이트 전에 발생합니다. 함수는 DEVMODE 구조체의 dmFields 멤버로 지정된 멤버에 대해서만 구조를 업데이트합니다. 병합 중에 충돌하는 경우 pDevModeInput 이 가리키는 DEVMODE 구조의 설정이 프린터 드라이버의 현재 인쇄 설정을 재정의합니다.
DM_UPDATE 사용자가 프린터 속성을 수정할 수 있도록 속성 시트를 표시한 다음, 드라이버의 현재 "사용자당" 설정을 레지스트리의 사용자 하이브에 씁니다.

반환 값

wMode 매개 변수가 0이면 함수는 프린터 드라이버 초기화 데이터를 포함하는 데 필요한 DEVMODE 구조체의 크기(바이트)를 반환합니다. 프린터 드라이버가 구조체에 프라이빗 데이터를 추가하는 경우 이 값은 DEVMODE 구조체의 크기보다 클 수 있습니다. 함수에 초기화 대화 상자가 표시되면 반환 값은 사용자가 선택한 단추에 따라 IDOK 또는 IDCANCEL입니다. 함수가 대화 상자를 표시하지 않고 성공한 경우 반환 값은 IDOK입니다. 함수가 실패한 경우 반환 값이 0보다 작습니다.

설명

ExtDeviceMode 함수는 DocumentProperties 함수(Windows SDK 설명서에 설명됨)를 호출하여 사용자가 용지 크기, 용지 방향 및 출력 품질과 같은 프린터 옵션을 선택할 수 있는 속성 시트를 표시합니다. Windows 3.x 및 Windows 9x용으로 작성된 프린터 드라이버는 이 함수를 사용합니다.

요구 사항

요구 사항
대상 플랫폼 데스크톱
머리글 winspool.h(Winspool.h 포함)
라이브러리 Winspool.lib
DLL WinSpool.drv