version 특성
[version] 인터페이스 특성은 여러 버전의 RPC 인터페이스 중 특정 버전을 식별합니다. 버전 특성을 사용하면 호환되는 버전의 클라이언트 및 서버 소프트웨어만 바인딩할 수 있습니다.
version ( major-value[[. minor-value]] )
매개 변수
-
major-value
-
주 버전 번호를 나타내는 0에서 65,535 사이의 짧은 부호 없는 정수를 지정합니다.
-
minor-value
-
부 버전 번호를 나타내는 0에서 65,535 사이의 부호 없는 짧은 정수를 지정합니다. 부 버전 값은 선택 사항입니다. 있는 경우 부 버전 값은 주 버전 번호와 마침표 문자(.)로 구분됩니다. 지정하지 않으면 부 버전 값이 0입니다.
설명
MIDL 컴파일러는 여러 버전의 COM 인터페이스를 지원하지 않습니다. 따라서 [object] 특성을 포함하는 인터페이스 특성 목록에는 [version] 특성이 포함될 수 없습니다. 기존 COM 인터페이스의 새 버전을 만들려면 인터페이스 상속을 사용합니다. 파생 COM 인터페이스에는 다른 UUID가 있지만 기본 인터페이스의 인터페이스 멤버 함수, 상태 코드 및 인터페이스 특성을 상속합니다.
[uuid] 값과 함께 [version] 값은 인터페이스를 고유하게 식별합니다. 런타임 라이브러리는 클라이언트가 원격 함수를 호출할 때 [version] 및 [uuid] 값을 서버에 전달합니다. 클라이언트는 다음과 같은 경우 지정된 인터페이스의 서버에 바인딩할 수 있습니다.
- [uuid] 값은 동일합니다.
- 주 버전 번호는 동일합니다.
- 클라이언트의 부 버전 번호가 서버의 부 버전 번호보다 작거나 같습니다.
부 버전 번호만 변경되도록 인터페이스를 수정하는 것은 버전 간에 상향 호환성을 유지하는 것이 사용자의 이점과 이점입니다. 기존 함수에서 사용하지 않는 새 데이터 형식을 추가하고 기존 함수에 대한 인터페이스 사양을 변경하지 않고 새 함수를 추가할 때 상향 호환성을 유지할 수 있습니다.
다음 조건 중 하나가 적용되는 경우 주 버전 번호를 변경합니다.
- 기존 함수에서 사용하는 데이터 형식을 변경하는 경우
- 기존 함수에 대한 인터페이스 사양을 변경하는 경우(예: 매개 변수 추가 또는 제거)
- 기존 함수에서 호출하는 콜백을 추가하는 경우
다음 조건이 모두 적용되는 경우 부 버전 번호를 변경합니다.
- 기존 함수 또는 콜백에서 사용되지 않는 형식 정의 또는 상수를 추가하는 경우
- 기존 함수를 변경하지 않고 인터페이스에 새 함수를 추가하는 경우
- 기존 함수에서 호출되지 않는 콜백을 추가하고 새 콜백이 기존 함수를 따르는 경우.
수정 내용이 인터페이스에 대한 상향 호환 변경으로 인정되는 경우 다음 절차를 사용합니다.
인터페이스(IDL) 파일을 수정하려면
- 인터페이스 파일에 새 상수 및 형식 정의를 추가합니다.
- 인터페이스 파일의 끝에 콜백 함수를 추가합니다.
- 인터페이스 파일의 끝에 새 함수를 추가합니다.
인터페이스 헤더에서 [version] 특성이 한 번만 발생할 수 있습니다.
버전 특성이 없으면 인터페이스의 기본 버전은 0.0입니다.
주 숫자와 부 숫자 사이의 마침표 문자는 구분 기호이며 소수점을 나타내지 않습니다. 부 번호는 정수로 처리됩니다. 앞에 오는 0은 중요하지 않습니다. 후행 0은 중요합니다.
예를 들어 버전 설정 1.11은 주 값 1과 부 값 11을 나타냅니다. 버전 1.11은 1.1에서 1.2 사이의 값을 나타내지 않습니다.
추가 정보