ACAPI_ListData_GetLocal
로컬 listing 구성요소의 데이터를 가져옵니다.
GSErrCode ACAPI_ListData_GetLocal ( Int32 libIndex, const API_Elem_Head* elemHead, API_ListData* listdata );
파라미터
- libIndex
- [in] 라이브러리 파트의 인덱스입니다.
- elemHead
- [in] 배치된 객체 인스턴스의 요소입니다. (설명을 보십시오)
- listdata
- [in/out] listdata의 파라미터들입니다. listdata의 타입은 반드시 listdata 헤더의
typeID
필드에 전달되어야 합니다. 라이브러리 파트의 인덱스는 listdata 헤더의index
필드에 전달되어야 합니다. structure의 나머지 필드들은 자동으로 채워집니다.
리턴 값
NoError
- 함수가 성공적으로 완료되었습니다.
APIERR_BADPARS
- 유효하지 않은
libIndex
가 전달되었습니다. APIERR_BADID
- 유효하지 않은 listdata 타입이 전달되었습니다.
다른 공통 API 오류들에 대해서는 API 오류 문서를 보십시오.
설명
이 함수는 listdata 헤더의 libIndex
, typeID
, index
필드에 의해 정의된 라이브러리 파트의 로컬 구성요소 또는 descriptor를 가져오는 데 사용합니다.
주어진 listdata의 정보는 listdata의 필드들에 리턴됩니다.
만약 주어진 listdata가 리스팅 데이터베이스 안에 있으면, 대신 ACAPI_ListData_Get 함수를 사용하십시오.
로컬 listdata를 가져올 때, 적용 가능한 필드들은 반드시 채워야 합니다.
API_ListData_Head
index
필수
typeID
(API_Component와 API_DescriptorID인 경우에만)필수
libIndex
필수
만약 당신이 descriptor를 가져오고 있다면, 마친 후에 name 핸들을 폐기하는 것을 잊지 마십시오.
만약 리스팅 결과가 라이브러리 파트 파라미터들의 현재 설정에 따라 다를 경우
(객체의 프로퍼티 스크립트 안에 있는 구성요소 또는 descriptor 정의들이 객체의 GDL 파라미터들을 참조할 때 그럴 가능성이 있음)
당신은 배치된 요소에 대하여 리스트화 될 올바른 데이터를 가져올 필요가 있습니다.
이 경우 당신은 적절한
elemTypeID
와 elemIndex
파라미터들을 전달할 필요가 있습니다.
그 외에는 이 값들이 각각 API_ZombieElemID
와 0
이어야 합니다.
예제
API_LibPart libPart; API_ListData listdata; API_Elem_Head head; Int32 libIndex; GSErrCode err; BNZeroMemory (&libPart, sizeof (API_LibPart)); BNZeroMemory (&head, sizeof (API_Elem_Head)); libPart.typeID = APILib_PropertyID; GS::ucscpy (libPart.docu_UName, L("Test property")); err = ACAPI_LibPart_Search (&libPart, false); delete libPart.location; if (err == NoError && libPart.index != 0) { libIndex = libPart.index; BNZeroMemory (&listdata, sizeof (API_ListData)); listdata.header.typeID = API_ComponentID; listdata.header.index = 1; err = ACAPI_ListData_GetLocal (libIndex, &head, &listdata); }
요구사항
- 버전: API 2.1 또는 이후
- 헤더: ACAPinc.h