|
ActiveX를 임포트해서 사용하는데..
클래스를 캐스팅하는데 문제가 생기네요...
헬프를 뒤져보니 비쥬얼씨의 경우에는 아래처럼
AttachDispatch함수를 사용해서 하라고 되어 있는데요..
빌더 6에서 임포트한 클래스에는 그런 함수가 존재하지 않네요.
이걸 어떻게 캐스팅해야 하나요?
빌더 6.0의 경우에는
vdFigure와 vdLine 클래스인데요..
그냥 다이렉트로 캐스팅하면 캐스팅은 되는데,,,
속성을 참조하면 에러가 발생합니다.
혹시 아시는 분 있으시면 답변좀 부탁드립니다.
vdFigure * f;
vdLine * l;
l = (vdLine*)f;
if ( l->Property == true ) // 여기서 에러발생...
/// 비쥬얼씨의 경우
CinterfaceVdFigure fig;
CinterfaceVdLine line;
fig. m_bAutoRelease = FALSE;
fig = m_Vdraw.GetActiveDocument().GetEntities().GetItem(0);
if(fig. m_lpDispatch == NULL) return; //allways check if it is a valid object
if(fig.GetType() != _T("VDLINE")) return;
line.AttachDispatch(fig,FALSE);
line.SetPenColor(1);
line.Update();
line.Invalidate();
|