SetCalendarInfoA 함수(winnls.h)

일정에 대한 로캘 정보의 항목을 설정합니다. 자세한 내용은 날짜 및 일정을 참조하세요.

구문

BOOL SetCalendarInfoA(
  [in] LCID    Locale,
  [in] CALID   Calendar,
  [in] CALTYPE CalType,
  [in] LPCSTR  lpCalData
);

매개 변수

[in] Locale

로캘 을 지정하는 로캘 식별자입니다. MAKELCID 매크로를 사용하여 로캘 식별자를 만들거나 다음 미리 정의된 값 중 하나를 사용할 수 있습니다.

다음 사용자 지정 로캘 식별자도 지원됩니다.

[in] Calendar

정보를 설정할 일정의 달력 식별자입니다.

[in] CalType

설정할 일정 정보의 유형입니다. 이 함수에는 다음 CALTYPE 값만 유효합니다. CAL_USE_CP_ACP 상수는 함수의 ANSI 버전에만 의미가 있습니다.

  • CAL_USE_CP_ACP
  • CAL_ITWODIGITYEARMAX
애플리케이션은 이 함수에 대한 호출당 하나의 달력 식별자만 지정할 수 있습니다. 애플리케이션이 이진 OR 연산자를 사용하여 CAL_USE_CP_ACP 달력 형식 정보에 정의된 유효한 CALTYPE 값과 결합하는 경우 예외가 발생할 수 있습니다.

[in] lpCalData

null로 끝나는 달력 정보 문자열에 대한 포인터입니다. 정보는 지정된 달력 형식의 형식이어야 합니다.

반환 값

성공하면 0이 아닌 값을 반환하고, 그렇지 않으면 0을 반환합니다. 확장된 오류 정보를 가져오기 위해 애플리케이션은 다음 오류 코드 중 하나를 반환할 수 있는 GetLastError를 호출할 수 있습니다.

  • ERROR_INTERNAL_ERROR. 함수에서 예기치 않은 오류가 발생했습니다.
  • ERROR_INVALID_FLAGS. 플래그에 제공된 값이 잘못되었습니다.
  • ERROR_INVALID_PARAMETER. 매개 변수 값이 잘못되었습니다.

설명

이 함수는 달력 설정의 사용자 재정의 부분에만 영향을 줍니다. 시스템 기본값을 설정하지 않습니다.

일정 정보는 항상 이 함수의 유니코드 버전에서 null로 끝나는 유니코드 문자열로 전달되고 ANSI 버전에서는 null로 종료된 ANSI 문자열로 전달됩니다. 이 함수에서 정수는 허용되지 않습니다. 숫자 값은 유니코드 또는 ANSI 텍스트로 지정해야 합니다.

이 함수의 ANSI 버전을 유니코드 전용 로캘 식별자와 함께 사용하면 운영 체제에서 시스템 코드 페이지를 사용하기 때문에 함수가 성공할 수 있습니다. 그러나 시스템 코드 페이지에서 정의되지 않은 문자는 문자열에 물음표(?)로 표시됩니다.

지정된 로캘에 대해 일정이 지원되지 않는 경우에도 일정과 함께 CAL_ITWODIGITYEARMAX 사용할 수 있습니다. 복잡성을 방지하려면 애플리케이션에서 EnumCalendarInfo 를 호출하여 일정이 관심 있는 로캘에 대해 지원되도록 해야 합니다.

참고

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

요구 사항

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

참고 항목

EnumCalendarInfo

GetCalendarInfo

국가 언어 지원

국가 언어 지원 함수