- CVI 정보나눔(www.cvi.kr)
- 스터디
- 강좌,팁,유용한것
강좌,팁
글 수 116

찰리브라운 님의 질문 내용중에 나온 메시지 창은
디버그 모드에서 프로그램 종료할 때마다 종종 보아왔고,
모두가 다 불편하게 여기면서도 무시하던 메시지 창이었습니다.
그것을 피해가기 위해 간단한 함수 하나를 만들어 보았습니다.
메인 Panel을 discard 하기 전에 한번 호출해주면 됩니다.
그림에 쉽게 보였고, 아래에 소스 부분을 옮겨봅니다.
저는 함수를 극동테크 범용라이브러리인 KDManip.dll 에 아예 포함시켜 사용합니다.(이 라이브러리에 대해서는 차후에 모든 분들이 이용할 수 있도록 준비하고 있습니다.)
-----------------------------------------------------------------------
void KDTmp_NoErrorProc(void)
/// LabWindows/CVI에서 불필요한 에러메시지 방지(2005.12.21, 극동테크)
/// A non-debuggable thread is trying to suspend execution at address 00000001.... 에러메시지 방지
/// 또, Windows2000, MS Office 환경에서 종료시 생기는 문제를 해결하기 위해...
{
int panel_Tmp;
panel_Tmp = NewPanel (0, "", 0, 0, 0, 0);
DisplayPanel (panel_Tmp);
HidePanel (panel_Tmp);
DiscardPanel (panel_Tmp);
}
int main (int argc, char *argv[])
{
if (InitCVIRTE (0, argv, 0) == 0)
return -1; /* out of memory */
if ((panelHandle = LoadPanel (0, "NoErrorProcTest2.uir", PANEL)) < 0)
return -1;
DisplayPanel (panelHandle);
RunUserInterface ();
// LabWindows/CVI에서 불필요한 에러메시지 방지
KDTmp_NoErrorProc();
DiscardPanel (panelHandle);
return 0;
}
-----------------------------------------------------------------------