C++ DLL에서 메서드를 내 보낸 다음 VB.net 폼 응용 프로그램에서이 메서드를 호출했습니다. C++ 메서드는 현재 반환 값 (void)이 없지만이를 개선하고 일련의 오류 코드를 나타내는 int를 반환하고자합니다. (모두 잘되면 0을 반환 할 계획입니다.)C++에서 오류 코드 상수를 정의하는 위치
어디에서 어떻게 이러한 오류 코드를 정의 할 수 있습니까?
#define ERR_NEGATIVE_CELL_SIZE 1
#define ERR_INVALID_FILE_PATH 2
etc
VB.net 응용 프로그램은 또한 코드를 기반으로 사용자에게 UI 메시지를이 같은 코드를 정의하고 표시합니다 :
나는 내 CPP 파일의 맨 위에 다음을 수행해야합니다.
명백하게 DLL에서 예외를 throw하고 VB.net에서 관련 예외 메시지와 함께 catch하는 것을 선호하지만 extern "C"__declspec (dllexport)을 사용하여 가능하지 않은 것 같습니다. 방법.
대체 디자인 패턴에 대해 듣고 싶습니다. 또한 C++ 콘솔 실행 파일을 통해 DLL 메서드를 노출 할 계획이므로 DLL에 오류 메시지를 한 번 저장하고 콘솔 및 UI 응용 프로그램에서 사용할 수 있도록하는 것이 이상적입니다.