제목에 나와있는대로 msvc2008 컴파일러를 사용하여 Qt 프로젝트를 진행하고 있습니다.msvc2008 컴파일러와 함께 Qt에서 afx_msg 사용
내가 작업하려고하는 샘플 코드는 afx_maps를 사용하며, 내가 말할 수있는 한 (실제로 afx가 어떻게 작동하는지는 알 수 없다.) 아래 코드는 메시지가 WM_PI_RAWDATA_READY가 수신되었는데 (수신 된 위치 나 수신 방법을 모르는 경우), OnRawDataReady 함수가 트리거됩니다.
//{{AFX_MSG_MAP(CPDImfcDlg)
ON_MESSAGE(WM_PI_RAWDATA_READY, OnRawDataReady)
//}}AFX_MSG_MAP
나는 헤더에 #INCLUDE를 추가 한 후 내 프로젝트에 코드를 복사하고, 시도, 그러나 그것은 나에게 다음과 같은 오류 제공 :이 보인다 다른 곳에서 발견했습니다
D:\Program Files\Microsoft Visual Studio 9.0\VC\ATLMFC\INCLUDE\afx.h:24: error: C1189: #error : Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version. Please #define _AFXDLL or do not use /MD[d]
수정 프로그램을 비주얼 스튜디오의 프로젝트 설정이기 때문에 어떻게해야할지 모르겠다.
이 문제를 해결하는 방법이나 afx_msg 관련 문제를 해결하는 방법에 대한 아이디어가 있으십니까?
많은 감사합니다.
그리고 이것은 Qt와 관련이 있습니다. 왜냐하면 ... ...? –
Qt의 프로젝트에서 Microsoft 컴파일러를 사용하고 있기 때문에 Microsoft Visual Studio 2008에서 사용할 수있는 프로젝트 설정에 액세스 할 수 없습니다. – Chaos
그러나 메시지 맵을 사용하는 코드는 확실히 MFC 코드이며 왜 당신이 Qt 프로젝트에서 MFC로 귀찮게하는지 이해하지 못 하겠지만, 아마 이것에 대한 동기를 완전히 이해하지 못했을 것입니다. 이제 제 질문은 Qt 프로젝트가 MFC 메시지 맵과 어떤 관계가 있는지입니다. –