LabVIEW 및 .NET 예외

업데이트 됨 Jan 10, 2019

해당 제품

Software

  • LabVIEW

문의사항

LabVIEW는 .NET 예외를 어떻게 처리합니까?

해결책

.NET 객체 프로퍼티 또는 메소드 호출시 발생하는 모든 예외사항은 LabVIEW 에러 1172로 변환됩니다.이 에러는 LabVIEW가 호출한 API로부터 .NET Exception가 발생했음을 의미합니다. 표시되는 일반적인 메시지는 다음과 유사합니다.
1172, kLVE_DotNetException, A .NET exception occurred.

1172는 .NET Exception에 대한 일반적인 오류 코드이므로 오류의 근본 원인은 .NET 예외 메시지와 관련됩니다.
  1. LabVIEW 8.0 및 이후 버전에서 .NET Exception 메시지 프로퍼티를 에러 클러스터의 에러 소스 문자열에 배치함으로써 에러 메시지에 더 많은 정보가 추가되었습니다. 예외에 대한 추가 정보를 보려면 소스 구성요소의 번들을 해제하십시오.
  2. LabVIEW 7.x에서 표시되는 유일한 정보는 .NET Exception이 발생했기 때문입니다. LabVIEW 7.x에서이 에러를 해결하려면, 다음 중 하나를 시도하십시오 :
  • 사용중인 .NET 어셈블리가 최상위 레벨 VI의 루트 디렉토리에 저장되어 있는지 확인하십시오.
  • Tools»Advanced»NET Assembly References 를 선택하여 LabVIEW에서 .NET 어셈블리를 참조로 추가하십시오. 추가 단추를 클릭하고 호출 할 모든 어셈블리의 위치를 ​​탐색합니다.

추가 정보

LabVIEW 8.0 및 이후 버전에서는 수동 에러 처리를 사용하는 경우에만 추가 정보를받습니다. 오류 처리에 대한 더 자세한 정보는 LabVIEW에서 에러 핸들링하기 를 참조하십시오.

LabVIEW에서 .NET 어셈블리를 호출할 때 고려해야 할 다른 사항은 다음과 같습니다.
  • 전용 어셈블리는 호출 응용 프로그램과 동일한 디렉토리에 있어야합니다.
  • 공유 어셈블리는 GAC에 설치해야합니다. 여기에는 네트워크 드라이브에서 호출 된 어셈블리가 포함됩니다. GAC에 설치하는 방법에 대한 자세한 내용은 Install an Assembly into the Global Assembly Cache를 참조하십시오. 네트워크 드라이브에서 어셈블리를 사용하기위한 더 많은 문제 해결 단계는 네트워크 드라이브에서 Running LabVIEW VIs or Executables That Use .NET Assemblies From a Network Drive 를 참조하십시오.
  • 응용 프로그램을 빌드하는 경우 빌드에 어셈블리를 포함하십시오. LabVIEW 어플리케이션 빌더는 GAC에 등록되지 않은 어셈블리를 데이터 하위 디렉토리에 자동으로 저장해야합니다. 빌드 된 응용 프로그램과 함께 데이터 디렉토리를 배포해야합니다.
  • 빌드 된 응용 프로그램을 배포 할 때 대상 컴퓨터에 호출 된 .NET 어셈블리에 해당하는 .NET Framework가 설치되어 있는지 확인하십시오.
  • Probe Tool 을 사용하여 원래 .NET Constructor Node VI에서 생성 된 .NET 객체 참조가 유효한지 확인하십시오.
  • 타사 .dll을 사용하는 경우 .NET Exception가 문제의 원인 일 수 있으며 LabVIEW는 .dll에서 문제가 발생했다는 일반적인 오류 메시지를 단순히 내보냅니다. 이 경우 추가 문제 해결을 위해 타사 .dll 제공 업체에 연락하십시오.
자세한 내용은 Requirements for Using .NET Assemblies in LabVIEW 을 참고하십시오.

이 글이 도움이 되셨습니까?

도움 안됨