라이브러리 함수 호출 노드에서 에러 1097 발생

업데이트 됨 Aug 21, 2023

해당 제품

소프트웨어

  • LabVIEW

운영 체제

  • Windows
  • PharLap

문의사항

LabVIEW 코드가 외부 DLL을 참조합니다. 프로그램을 실행할 때 라이브러리 함수 호출 노드에서 Error 1097이 발생했지만 프로그램이 실행을 중지하지 않겠다는 메시지가 나타납니다.

에러 1097: LabVIEW: [라이브러리 함수 호출 노드]에 의해 호출된 외부 코드 안에서 예외가 발생했습니다. 이 같은 예외로 LabVIEW 메모리가 손상했을 수 있습니다. 새 위치에 모든 작업을 저장하고 LabVIEW를 다시 시작하십시오.
 



이 에러를 어떻게 해결할 수 있습니까?

해결책

이 에러는 메모리가 프로그램에 의해 부적절하게 처리되고 있음을 나타낼 수 있습니다. 이 에러의 가장 큰 원인은 라이브러리 함수 호출 노드에서의 부적절한 호출 규칙 때문입니다. stdcall (WINAPI) 규칙은 DLL이 메모리 사용을 처리할 것이라고 생각하지만 C 호출 규칙은 LabVIEW가 메모리 사용을 처리할 것이라고 생각합니다. stdcall (WINAPI) 규칙을 잘못 사용하면 메모리가 처리되지 않을 수 있습니다. 아래 이미지와 같이 노드를 두 번 클릭하고 선택을 변경하여 호출 규칙을 구성할 수 있습니다.
 

또한 호출중인 DLL이 LabVIEW가 처리할 수 없는 에러를 발생시키고 있음을 나타낼 수 있습니다. 이를 테스트하려면 가장 간단한 방법으로는 DLL이 제대로 작동하는지 확인하는 것입니다. DLL이 예상대로 작동하면 다시 응용 프로그램에 통합하십시오.