다음을 통해 공유


/strong 스위치

/strong 스위치는 MIDL 컴파일러에 NDR 엔진이 런타임에 무결성 검사를 수행하는 데 사용하는 추가 오류 검사 정보를 생성하도록 지시합니다.

midl /robust {/Oicf | /Oif }

스위치 옵션

/Oicf

/Oif

이러한 스위치는 해당 기능에서 동일합니다. 마샬링의 코드 없는 프록시 메서드를 지정하고 성능 향상을 위해 빠른 형식 문자열을 사용합니다. 참조 / 오이.

설명

/strong 스위치를 사용하면 NDR(네트워크 데이터 표현) 엔진이 DCOM 애플리케이션의 동적 배열, 공용 구조체 및 아웃 인터페이스 포인터에서 상관 관계가 있는 인수에 대한 런타임 오류 검사를 수행할 수 있는 추가 정보가 생성됩니다. /strong 스위치는 Windows 2000 이상 버전의 Windows에서만 사용할 수 있습니다.

상관 관계가 있는 인수는 런타임에 데이터 개체의 크기를 확인할 수 있는 특성(size_is, length_is, first_is, last_is, max_is, switch_isiid_is)을 사용하는 인수입니다. 유선 표현의 OSF-DCE 사양에 따라 이 상관 관계가 있는 인수는 서로 다른 두 위치에 나타납니다. 예를 들어 size_is 특성의 일반적인 사용법은 다음과 같습니다.

HRESULT Func1([in] long Size, 
              [in, size_is(Size)]BAR_TYPE *pBarType);

이 예제에서 클라이언트는 BAR_TYPEs 블록의 크기(BAR_TYPES 요소 수) 및 실제 BAR_TYPEs 블록에 대한 포인터를 지정하는 long을 전달합니다. Size 인수는 pBarType 인수와 상관 관계가 있습니다. OSF-DCE 사양에 따라 Size 인수는 유선에서 두 번 표시됩니다. 먼저 그 자체로 표시한 다음 pBarType 인수를 나타내는 BAR_TYPE 요소의 배열로 표시됩니다. 각 인수는 자체 와이어 표현에 따라 독립적으로 숨을 들이쉬지 않습니다. 일반적으로 다른 인수의 일부를 나타내는 데 사용되는 Size 인수와 해당 복사본의 값은 동일합니다. 그러나 Size 인수가 손상되면(예: BAR_TYPES 블록이 할당된 것보다 큰 경우) 서버 애플리케이션은 Size 인수 값을 사용하여 들어오는 데이터를 측정하기 때문에 응답을 중지할 수 있습니다.

범위 특성을 사용하여 유효한 범위 검사를 구현하려면 /strong 스위치가 필요합니다.

예제

midl /robust /Oicf filename.idl

추가 정보

일반 MIDL 명령줄 구문

/Oi

범위