콘텐츠로 이동
무료 평가 시작

pdcomm_gem_equipment_configure_enhanced_commands

함수

GEM 장비 엔드포인트에 확장 원격 명령(enhanced remote command) 저장소를 설치합니다.

PdcommStatus pdcomm_gem_equipment_configure_enhanced_commands(PdcommTcpEndpoint *endpoint, const PdcommGemEnhancedCommandOptions *options, const PdcommGemEnhancedObjectDefinition *objects, size_t count)

선언 위치: #include <pdcomm_gem_enhanced_commands.h>

모든 객체, 명령, 매개변수 정의를 검증해 임시 저장소에 복사합니다. 모든 정의가 유효하고 모든 완료 CEID가 보고서 카탈로그에 있을 때만 이 저장소를 설치합니다. 저장소는 한 번만 구성할 수 있습니다.

매개변수

이름설명
endpointGEM 장비가 구성된 Stopped 상태의 TCP 엔드포인트입니다.
options저장소 한도입니다. struct_size는 sizeof(PdcommGemEnhancedCommandOptions) 이상이어야 합니다.
objectscount개의 객체 정의 배열입니다. count가 0이면 NULL일 수 있습니다.
count객체 개수입니다. options->max_objects를 넘으면 안 됩니다.

반환값

저장소를 설치하면 #PDCOMM_OK를 반환합니다. endpoint 또는 options가 NULL이거나, struct_size가 너무 작거나, version 또는 reserved가 잘못되었거나, item_limits 값이 0이거나, 배열 포인터나 이름 항목이 NULL이거나, 플래그가 0 또는 1이 아니거나, 객체 이름이 ASCII 항목이 아니거나, 명령이나 매개변수의 이름 또는 형식이 잘못되었거나(JIS-8 포함), 개수 범위나 경계값이 잘못되었거나, 이름이 중복되었거나, 완료 CEID가 보고서 카탈로그에 없으면 #PDCOMM_INVALID_ARGUMENT를 반환합니다. 개수, 합계 또는 이름 길이가 한도를 넘으면 #PDCOMM_LIMIT_EXCEEDED를 반환합니다. 엔드포인트가 정지되어 있지 않거나, 준비된 TCP 이벤트가 있거나, GEM 장비가 없거나, 이미 확장 명령 저장소가 있으면 #PDCOMM_INVALID_STATE를 반환합니다. 메모리를 할당할 수 없으면 #PDCOMM_ALLOCATION_FAILED를 반환합니다. 엔드포인트가 오염(poisoned) 상태이거나 패닉(panic)을 격리했으면 #PDCOMM_POISONED를 반환합니다.

참고

  • 호출이 반환된 뒤에는 어떤 입력 포인터나 항목도 보관하지 않습니다.