영어로 읽기

다음을 통해 공유


CreateDCA 함수(wingdi.h)

CreateDC 함수는 지정된 이름을 사용하여 디바이스에 대한 디바이스 컨텍스트(DC)를 만듭니다.

통사론

HDC CreateDCA(
       LPCSTR         pwszDriver,
  [in] LPCSTR         pwszDevice,
       LPCSTR         pszPort,
  [in] const DEVMODEA *pdm
);

매개 변수

pwszDriver

DISPLAY 또는 특정 디스플레이 디바이스의 이름을 지정하는 null로 끝나는 문자열에 대한 포인터입니다. 인쇄의 경우 GDI가 프린터 장치에 대한 lpszDriver 무시하므로 NULL lpszDriver 전달하는 것이 좋습니다.

[in] pwszDevice

인쇄 관리자(예: Epson FX-80)에 표시된 대로 사용 중인 특정 출력 디바이스의 이름을 지정하는 null로 끝나는 문자열에 대한 포인터입니다. 프린터 모델 이름이 아닙니다. lpszDevice 매개 변수를 사용해야 합니다.

표시에 유효한 이름을 가져오려면 EnumDisplayDevices호출합니다.

lpszDriver 디스플레이 또는 특정 디스플레이 장치의 디바이스 이름인 경우 lpszDevice NULL 또는 동일한 디바이스 이름을 합니다. lpszDevice NULL경우 주 디스플레이 디바이스에 대한 DC가 만들어집니다.

시스템에 모니터가 여러 대 있는 경우 CreateDC(TEXT("DISPLAY"),NULL,NULL,NULL) 호출하면 모든 모니터를 포함하는 DC가 만들어집니다.

pszPort

이 매개 변수는 무시되며 NULL설정해야 합니다. 16비트 Windows와의 호환성을 위해서만 제공됩니다.

[in] pdm

디바이스 드라이버에 대한 디바이스별 초기화 데이터를 포함하는 DEVMODE 구조체에 대한 포인터입니다. DocumentProperties 함수는 지정된 디바이스에 대해 채워진 이 구조를 검색합니다. 디바이스 드라이버가 사용자가 지정한 기본 초기화(있는 경우)를 사용하는 경우 pdm 매개 변수는 NULL 합니다.

lpszDriver DISPLAY이면 pdm NULL합니다. 그런 다음 GDI는 디스플레이 디바이스의 현재 DEVMODE사용합니다.

반환 값

함수가 성공하면 반환 값은 지정된 디바이스에 대한 DC에 대한 핸들입니다.

함수가 실패하면 반환 값은 NULL.

발언

DC에 대한 핸들은 한 번에 단일 스레드에서만 사용할 수 있습니다.

lpszDriver 및 lpszDevice매개 변수의 경우 EnumDisplayDevices 호출하여 표시에 유효한 이름을 가져옵니다.

DC가 더 이상 필요하지 않은 경우 DeleteDC 함수를 호출합니다.

lpszDriver 또는 lpszDevice DISPLAY이면 CreateDC 호출하는 스레드는 생성된 HDC 소유합니다. 이 스레드가 제거되면 HDC 더 이상 유효하지 않습니다. 따라서 HDC 만들고 다른 스레드에 전달한 다음 첫 번째 스레드를 종료하면 두 번째 스레드는 HDC사용할 수 없습니다.

CreateDC 호출하여 디스플레이 디바이스에 대한 HDC 만들 때 NULL 또는 lpszDevice 지정하는 디스플레이 디바이스의 현재 DEVMODE 일치하는 DEVMODE 포인터를 pdm에 전달해야. NULL 전달하고 현재 디스플레이 디바이스의 DEVMODE 정확히 일치시키려고 하지 않는 것이 좋습니다.

CreateDC 호출하여 프린터 디바이스에 대한 HDC 만들면 프린터 드라이버에서 DEVMODE유효성을 검사합니다. 프린터 드라이버가 DEVMODE 유효하지 않다고 판단하는 경우(즉, 프린터 드라이버가 DEVMODE를 변환하거나 사용할 수 없는 경우) 프린터 드라이버는 기본 DEVMODE 제공하여 프린터 디바이스에 대한 HDC를 만듭니다.

ICM: ICM을 사용하도록 설정하려면 DEVMODE 구조체의 dmICMMethod 멤버(pInitData 매개 변수로 가리킨)를 적절한 값으로 설정합니다.

예제

예를 들어 이미지캡처하는 참조하세요.

참고

wingdi.h 헤더는 CREATEDC를 UNICODE 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입대한 규칙을 참조하세요.

요구 사항

요구
지원되는 최소 클라이언트 Windows 2000 Professional [데스크톱 앱만 해당]
지원되는 최소 서버 Windows 2000 Server [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 wingdi.h(Windows.h 포함)
라이브러리 Gdi32.lib
DLL Gdi32.dll

참고 항목

DEVMODE

DOCINFO

DeleteDC

디바이스 컨텍스트 함수

디바이스 컨텍스트 개요

documentProperties

EnumDisplayDevices

여러 디스플레이 모니터

StartDoc