IDL 속성 추가
IDL 속성 추가 마법사는 IDL(인터페이스 정의 라이브러리)에서 정의된 인터페이스(예: .idl
파일이 포함된 ATL 프로젝트)에 속성을 추가합니다. MFC를 지원하는 프로젝트에서는 이 마법사를 사용할 수 없습니다.
이 마법사는 속성 추가 마법사 및 IDL MFC 속성 추가 마법사와는 다음과 같이 다릅니다.
- 속성 추가 마법사는 프로젝트의 인터페이스에 속성을 추가합니다.
- IDL MFC 속성 추가 마법사는 MFC, ActiveX 또는 MFC를 지원하는 ATL 프로젝트에만 적용됩니다.
IDL 속성 추가
보기 메뉴에서 클래스 뷰를 선택합니다.
클래스 뷰에서 속성을 추가할 인터페이스의 이름을 마우스 오른쪽 단추로 클릭합니다.
참고
프로젝트에 특성이 지정되지 않은 경우 라이브러리 노드 내에 중첩된 dispinterface에 속성을 추가할 수도 있습니다.
인터페이스의 이름을 마우스 오른쪽 단추로 클릭합니다.
바로 가기 메뉴에서 추가>속성 추가를 선택합니다.
IDL 속성 추가 마법사에서 속성을 만들기 위한 정보를 제공합니다.
확인을 선택하여 속성을 추가합니다.
속성의 Get
및 Put
메서드는 해당 속성이 정의된 인터페이스의 클래스 뷰에서 두 개의 아이콘으로 표시됩니다. 두 아이콘 중 하나를 두 번 클릭하여 .idl
파일에서 속성 선언을 볼 수 있습니다.
ATL 인터페이스에서 Get
및 Put
함수는 .cpp
및 .h
파일에 추가됩니다.
IDL 속성 마법사 추가
다음 섹션에서는 IDL 속성을 추가하는 데 사용할 UI를 설명합니다.
속성 이름
속성 이름을 설정합니다.
속성 형식
속성의 데이터 형식.
반환 형식
ATL 인터페이스의 경우 속성에 대한 반환 형식을 설정합니다. 이중 인터페이스의 경우,
HRESULT
는 항상 반환 형식이며 이 옵션은 사용할 수 없습니다. 사용자 지정 인터페이스의 경우, 목록에서 반환 형식을 선택할 수 있습니다.HRESULT
은 오류를 반환하는 표준 방식을 제공하기 때문에 여전히 권장됩니다.Get 함수
ATL 인터페이스의 경우 속성 값을 검색하기 위한
Get
메서드를 만듭니다. Get, Put 또는 모두를 선택합니다.Put 함수
ATL 인터페이스의 경우 속성 값을 설정하기 위한
Put
메서드를 만듭니다. Get, Put 또는 모두를 선택합니다. Put 함수를 선택하면 다음 두 가지 메서드 구현 방법 중에서 선택할 수 있습니다.옵션 Description propput
PropPut
함수는 개체의 복사본을 반환합니다. propput는 속성을 쓰기 가능하도록 만드는 기본적이고 가장 일반적인 방법입니다.propputref
PropPutRef
함수는 개체 자체의 복사본을 반환하지 않고 개체에 대한 참조를 반환합니다. 큰 구조체 또는 배열과 같은 초기화 오버헤드가 있을 수 있는 개체에는propputref
옵션을 사용하는 것이 좋습니다.매개 변수
속성에 추가할 매개 변수 목록을 표시합니다. 목록의 각 항목은 매개 변수 이름, 매개 변수 형식 및 특성으로 구성됩니다.
in
는 호출하는 프로시저에서 호출된 프로시저로 매개 변수가 전달되는 것을 표시합니다.out
는 포인터 매개 변수가 호출된 프로시저에서 호출하는 프로시저로(서버에서 클라이언트로) 반환되는 것을 표시합니다.+
매개 변수를 추가합니다. 매개 변수에서 매개 변수 형식 및 이름을 입력합니다. 예를 들어
int x
를 입력하고, 확인을 선택합니다.x
매개 변수에서 선택한 매개 변수를 제거합니다.
연필 아이콘을 선택하여
선택한 매개 변수를 편집합니다.
특성
helpcontext
도움말 파일에서 이 속성에 대한 정보를 볼 수 있는 컨텍스트 ID를 지정합니다. 자세한 내용은
helpcontext
을 참조하세요.helpstring
적용되는 요소를 설명하는 데 사용되는 문자열을 지정합니다. 기본적으로
property
속성 이름으로 설정됩니다. 자세한 내용은helpstring
을 참조하세요.id
속성을 식별하는 숫자 ID를 설정합니다. 이 옵션은 사용자 지정 인터페이스의 속성에 사용할 수 없습니다. 자세한 내용은
id
을 참조하세요.
- 추가 특성
Microsoft 인터페이스 정의 언어(MIDL)의 키워드는 MIDL 언어 참조에 자세히 설명되어 있습니다.
옵션 | 설명 |
---|---|
bindable |
속성이 데이터 바인딩을 지원합니다. 자세한 내용은 bindable 을 참조하세요. |
defaultbind |
개체를 가장 잘 보여주는 바인딩할 수 있는 단일 속성임을 나타탭니다. 자세한 내용은 를 참조하세요. |
defaultcollelem |
속성은 기본 컬렉션의 요소에 대한 접근자 함수입니다. 자세한 내용은 defaultcollelem 을 참조하세요. |
displaybind |
사용자에게 바인딩할 수 있는 속성으로 표시합니다. 자세한 내용은 displaybind 을 참조하세요. |
hidden |
속성이 존재하지만 사용자 기반 브라우저에는 표시되지 않아야 함을 나타냅니다. 자세한 내용은 hidden 을 참조하세요. |
immediatebind |
데이터 바인딩된 개체의 이 속성에 대한 모든 변경 내용을 데이터베이스에 즉시 알립니다. 자세한 내용은 immediatebind 을 참조하세요. |
local |
속성이 원격이 아니라고 MIDL 컴파일러에 지정합니다. 자세한 내용은 local 을 참조하세요. |
nonbrowsable |
속성 브라우저에 표시하지 않아야 할 인터페이스 또는 dispinterface 멤버의 태그를 지정합니다. 자세한 내용은 nonbrowsable 을 참조하세요. |
requestedit |
속성이 OnRequestEdit 알림을 지원함을 나타냅니다. 자세한 내용은 requestedit 을 참조하세요. |
restricted |
임의로 속성을 호출할 수 없도록 지정합니다. 자세한 내용은 restricted 을 참조하세요. |
source |
속성의 멤버가 이벤트의 소스입니다. 자세한 내용은 source 을 참조하세요. |