기존 AutoCAD 2006에서 VS 2002를 이용하여 ARX를 개발을 완료하여 잘 사용하였습니다.
개발된 프로그램을 아래와 같이 업데이트 하는데 오류가 발생합니다.
예전환경: ObjectARX 2006, VS 2002
업데이트: ObjectARX 2009, VS 2005
오류 내용은 다음과 같습니다.
================================
*오류
acutPrintf(“n%d 개!.”, nNumber);
acedGetString(1, “n아무키나 누르세요!”, chResult);
상기에 대한 오류 메세지는 아래와 같습니다.
error C2664: ‘acedGetString’ : 매개 변수 2을(를) ‘const char [5]’에서 ‘const ACHAR *'(으)로 변환할 수 없습니다.
가리킨 형식이 관련이 없습니다. 변환하려면 reinterpret_cast, C 스타일 캐스트 또는 함수 스타일 캐스트가 필요합니다.
================================
char 변환적인 문제 같은데 설치된 ObjcetARX 2009 예제 소스에는
acedGetString(0, _T(“npress <RETURN> to continue…”),dummy);
같이 _T를 사용한 것을 확인하였습니다.
그래서 기존에 개발된 소스에 _T를 이용하여 아래와 같이 수정했지만
acedGetString(1, _T(“n아무키나 누르세요!”), chResult);
여전히 동일한 오류 메세지를 보여줍니다.
제 생각에는 이전에 개발된 소스에서는 _T를 인지 못하는 것으로 보입니다.
ObjectARX 2009에서 제공되는 예제 소스의 _T 부분에 마우스를 가져가면 #define _T(x) __T(x)이 나타나지만 이전에 개발된 소스에 _T를 입력하여 마우스를 가져가도 아무런 정보가 없습니다.
개인적인 결론은
이전에 개발된 프로젝트의 속성을 변경하거나 변환하는 방법이 있을 것 같은데
아직 어떤 부분 때문인지 파악을 못하고 있습니다.
고수님들의 많은 조언 부탁에 부탁 드리겠습니다.. ^^
감사합니다.