라이브러리 함수 호출 노드
- 업데이트 날짜:2025-03-14
- 3분 (읽기 시간)
DLL 또는 공유 라이브러리 함수를 직접 호출합니다.
[라이브러리 함수 호출 노드]는 [묶기] 함수와 마찬가지로 확장가능하며, 연결된 입력과 출력의 데이터 타입을 보여줍니다. [라이브러리 함수 호출 노드]를 설정하여 라이브러리, 함수, 파라미터, 노드의 반환값, 호출 형식,함수 콜백을 지정할 수 있습니다.

입력/출력
![]() 경로 입력은 호출하려는 공유 라이브러리의 경로 또는 이름을 식별합니다. 이 입력이 커넥터 팬에 나타나도록 하려면 라이브러리 함수 호출 대화 상자의 다이어그램에 경로 지정 확인란에 확인 표시를 해야합니다. 사용자가 공유 라이브러리를 이름으로 호출할지 경로로 호출할지 지정할 수 있지만, 이 두 방법은 공유 라이브러리의 위치를 찾는데 있어서 다른 검색 알고리즘을 사용하며, 공유 라이브러리를 독립 어플리케이션과 함께 배포할 때 다른 양상을 보입니다. 사용자의 용도에 맞는 적절한 방법을 선택하도록 하십시오. 예를 들어, kernel32.dll과 같은 시스템 공유 라이브러리는 항상 이름으로 지정하십시오. ![]() 에러 입력은 이 노드의 실행 전에 발생한 에러 조건을 설명합니다. 이 입력은 표준 에러 입력 기능을 제공합니다. ![]() 파라미터 1..n은 라이브러리 함수 입력 파라미터의 예입니다. ![]() 경로 출력은 호출된 DLL 또는 공유 라이브러리의 경로를 반환합니다. 이 출력이 커넥터 팬에 나타나도록 하려면 라이브러리 함수 호출 대화 상자의 다이어그램에 경로 지정 확인란에 확인 표시를 해야합니다. ![]() 에러 출력은 에러 정보를 포함합니다. 이 출력은 표준 에러 출력 기능을 제공합니다. ![]() 반환값은 라이브러리 함수 반환값의 예입니다. ![]() 파라미터 1..n 출력은 라이브러리 함수 출력 파라미터의 예입니다. |
에러 I/O은 이 함수에서 고유하게 작동하며, 에러가 노드에 들어가는 경우 실행되지 않습니다. 에러 7은 제공한 경로가 다이나믹 DLL 로딩에 존재하지 않는 경우 발생합니다. 에러 1097은 [라이브러리 함수 호출 노드]가 예외가 포함된 외부 코드를 호출할 때 발생합니다.
[라이브러리 함수 호출 노드]는 많은 수의 데이터 타입과 호출 형식을 지원합니다. 이 노드를 사용하여 대부분의 표준 및 사용자 정의 DLLs와 공유 라이브러리에서 함수를 호출할 수 있습니다. ActiveX 개체가 포함된 DLL을 호출하려면 속성 노드 및 호출 노드와함께 자동화 열기 함수를 사용합니다.
[라이브러리 함수 호출 노드]는 입력과 출력 터미널의 쌍으로 이루어집니다. 한쪽 터미널 또는 양쪽 터미널을 사용할 수 있습니다. 노드가 반환값을 생성하지 않는 경우, 가장 위의 터미널은 사용되지 않습니다. 각 추가 터미널 쌍은 위에서 아래의 순서로 호출하는 함수의 파라미터 리스트에 있는 파라미터에 대응합니다. 터미널 쌍의 왼쪽 터미널에 연결하여 함수에 값을 전달합니다. 터미널 쌍의 오른쪽 터미널로부터 와이어를 연결하여 함수를 호출한 후 파라미터의 값을 읽습니다.
노드에서 마우스 오른쪽 버튼을 클릭한 후 바로 가기 메뉴에서 설정을 선택하여 라이브러리 함수 호출 대화 상자를 디스플레이합니다. 이 대화 상자를 사용하여 라이브러리 이름 또는 경로, 함수 이름, 호출 형식, 파라미터, 노드의 반환값을 지정할 수 있습니다. 확인 버튼을 클릭하면, 노드는 자동으로 크기 조정하여 올바른 수의 터미널을 표시하고 터미널을 올바른 데이터 타입으로 설정합니다.
또한 [라이브러리 함수 호출 노드]를 사용하여 텍스트 기반 프로그래밍 언어로 작성된 코드를 호출할 수 있습니다.
관련 정보
예제
LabVIEW 포함되는 다음 예제 파일을 참조하십시오.
- labview\examples\Connectivity\Libraries and Executables\External Code (DLL) Execution.vi