VI 서버 어플리케이션 만들기
- 업데이트 날짜:2025-08-27
- 2분 (읽기 시간)
VI 서버 어플리케이션의 프로그래밍 모델은 참조 번호를 기초로 합니다. 또한, 참조 번호는 LabVIEW에서 파일 I/O, 네트워크 연결, 기타 객체에서 사용됩니다.
일반적으로, 어플리케이션 인스턴스 또는 VI의 참조 번호를 엽니다. 그 후 이 참조 번호는 다른 VI의 파라미터로 사용됩니다. 이 VI는 프로퍼티를 얻기(읽기) 또는 설정(쓰기)하거나, 메소드를 실행하거나, 다이나믹하게 참조된 VI를 로드하고 호출합니다. 끝으로, 참조 번호를 닫습니다. 이는 메모리에서 참조되는 VI를 해제합니다.
다음 어플리케이션 컨트롤 함수와 노드를 사용하여 VI 서버 어플리케이션을 만듭니다:
- 어플리케이션 참조 열기—로컬이나 원격 어플리케이션 인스턴스에 대한 참조를 엽니다.
- VI 참조 열기—로컬이나 원격 컴퓨터에서 VI에 대한 참조를 열거나 디스크에서 다이나믹하게 VI를 로드합니다.
- 프로퍼티 노드―VI, 객체, 또는 어플리케이션의 프로퍼티를 받거나 설정합니다.
- 인보크 노드―VI, 객체, 또는 어플리케이션에 메소드를 실행합니다.
- 참조에 의한 호출 노드―다이나믹하게 로드된 VI를 호출합니다.
- 비동기화 호출 시작 노드―다이나믹하게 로드된 VI에 대한 비동기화 호출을 시작합니다.
- 비동기화 호출 기다림 노드―비동기적으로 호출된 VI의 결과를 수집합니다.
- 참조 닫기―VI 서버를 사용하여 접근한 VI, 객체, 또는 어플리케이션의 열린 참조를 닫습니다.
어플리케이션과 VI 참조
두 가지의 주요 객체 클래스, 어플리케이션 객체와 VI 객체에 대한 참조를 통해 VI 서버 기능에 접근할 수 있습니다. 두 객체 중 하나의 참조를 생성한 후, 해당 객체에 동작을 수행하는 VI 또는 함수에 참조를 전달할 수 있습니다.
어플리케이션 참조는 로컬 또는 원격 어플리케이션 인스턴스를 참조합니다. 어플리케이션 프로퍼티와 메소드를 사용하여 LabVIEW 환경을 변경하고 시스템 정보를 반환할 수 있습니다. VI 참조 번호는 어플리케이션 인스턴스의 VI를 참조합니다.
어플리케이션 인스턴스의 참조로 LabVIEW가 실행되는 플랫폼, 버전 번호, 또는 현재 메모리에 있는 모든 VI의 리스트와 같은 LabVIEW 환경에 대한 정보를 가져올 수 있습니다. 또한, 다른 어플리케이션 인스턴스로 반출된 VI의 리스트와 같은 정보를 설정할 수 있습니다. 한 번에 여러 어플리케이션 인스턴스를 열 수 있기 때문에, 하나의 어플리케이션 인스턴스에서 VI 서버 프로퍼티와 메소드를 사용하면서 다른 어플리케이션 인스턴스와 상호 작용을 하고자 할 때에는 어플리케이션 참조를 사용해야 합니다. 예를 들어, LabVIEW는 사용자가 LabVIEW 프로젝트 또는 LabVIEW 프로젝트를 위한 타겟을 생성할 때 새로운 어플리케이션 인스턴스를 엽니다.
VI에 대한 참조 번호를 생성하면 LabVIEW는 이 VI를 메모리에 로딩합니다. 참조를 닫고 VI가 다음 조건을 만족할 때까지 이 VI는 메모리에 남아있습니다.
- 참조된 VI에 다른 열린 참조가 없습니다.
- VI의 프런트패널이 열려있지 않습니다.
- VI가 메모리에 있는 다른 VI의 SubVI가 아닙니다.
- VI는 열린 프로젝트 라이브러리의 멤버가 아닙니다.
VI의 참조 번호로, 소유 구획의 위치와 같은 다이나믹 프로퍼티와 VI 프로퍼티 대화 상자에서 사용 가능한 VI의 모든 프로퍼티를 업데이트할 수 있습니다. 또한, 프로그램적으로 VI 문서를 인쇄하고, 다른 위치에 VI를 저장하며, 문자열을 반출 및 반입하여 다른 언어로 번역할 수 있습니다.