다음을 통해 공유


DrvSaveScreenBits 함수(winddi.h)

DrvSaveScreenBits 함수를 사용하면 디스플레이 드라이버가 표시된 이미지의 지정된 사각형을 저장하거나 복원합니다.

구문

ULONG_PTR DrvSaveScreenBits(
  SURFOBJ   *pso,
  ULONG     iMode,
  ULONG_PTR ident,
  RECTL     *prcl
);

매개 변수

pso

표면을 설명하는 SURFOBJ 구조체에 대한 포인터입니다.

iMode

수행할 작업을 지정합니다. 이 매개 변수는 다음 값 중 하나일 수 있습니다.

SS_SAVE

드라이버는 prcl로 정의된 사각형에서 데이터를 저장해야 합니다. 드라이버는 오프 스크린 메모리에서 이 데이터를 관리할 책임이 있습니다. ident 매개 변수는 무시됩니다.

성공하면 DrvSaveScreenBits는 저장된 데이터에 대한 식별자를 반환해야 합니다. 드라이버는 핸들 또는 오프 스크린 메모리에 대한 포인터를 반환할 수 있습니다. 이 함수는 실패할 경우 0을 반환합니다.

SS_RESTORE

드라이버는 ident 로 식별된 데이터를 디스플레이의 사각형 prcl 로 복원해야 합니다. 즉, 드라이버는 비트맵을 원래 위치로 복원해야 합니다. 드라이버는 prcl 의 사각형이 저장된 사각형과 정확히 동일한 크기라고 가정할 수 있습니다. 이 호출 후에는 데이터를 삭제해야 합니다.

DrvSaveScreenBits 는 데이터가 디스플레이에 복원된 경우 TRUE 를 반환하고, 데이터를 복원할 수 없는 경우 FALSE 를 반환해야 합니다.

SS_FREE

ident로 식별된 데이터는 더 이상 필요하지 않으며 해제할 수 있습니다. prcl의 값은 정의되지 않으므로 사용하면 안 됩니다. 드라이버가 저장된 사각형을 디스플레이로 복원하면 안 됩니다.

DrvSaveScreenBits는TRUE를 반환해야 합니다.

ident

iMode가 SS_RESTORE 또는 SS_FREE 경우 DrvSaveScreenBits에 대한 이전 호출에서 반환된 드라이버 정의 값에 대한 포인터입니다. iMode가 SS_SAVE 때 드라이버는 이 매개 변수를 무시해야 합니다.

prcl

저장하거나 복원할 화면 부분을 정의하는 RECTL 구조체에 대한 포인터입니다.

반환 값

반환 값은 iMode 매개 변수의 값에 따라 달라집니다.

설명

일부 디스플레이 드라이버는 영역을 다시 그릴 수 있는 것보다 훨씬 빠르게 화면 외 디바이스 메모리로 데이터를 이동할 수 있습니다. 이는 창 관리자가 메뉴 또는 대화 상자를 표시해야 하는 경우에 유용할 수 있습니다.

DrvSaveScreenBits 는 디스플레이 드라이버에 대한 선택 사항입니다.

요구 사항

요구 사항
대상 플랫폼 데스크톱
머리글 winddi.h(Winddi.h 포함)

추가 정보

SURFOBJ