Тема: Кто работал с Com Wrapper в ObjectARX?

Кто-нибудь работал с Com Wrapper В ObjectARX, а потом подключался в VB?

Re: Кто работал с Com Wrapper в ObjectARX?

Если еще надо - спрашивай.

Re: Кто работал с Com Wrapper в ObjectARX?

Я пытаюсь выполнить пример в ObjectARX2002\docsamps\comsamps\AsdkSquareWrapper square.dbx и squareui.arx.
В VBA я подключил AsdkSquareLib.dll.
После пытаюсь создать AsdkSquareWrapper:
My kode:
Dim wrapper As AsdkSquareWrapper
Dim StartPt As Variant
Set wrapper = New AsdkSquareWrapper
StartPt = ThisDrawing.Utility.GetPoint(, "Get point")
Set wrapper.CenterPoint = StartPt
But error: Run-time error '70'
Permission denied
Что я делаю неправильно
Спасибо

Re: Кто работал с Com Wrapper в ObjectARX?

Ты не создал собственно Db-resident объект.
Если посмотришь VBA-примеры, то раппер является возвращаемым от набора Add... методов. Например AddArc. Тебе же надо использовать AddCustomObject.

Re: Кто работал с Com Wrapper в ObjectARX?

ThisDrawing.Application.LoadArx ("AsdkSquareLib.dll")
Dim StartPt As Variant
Dim customObj As AcadObject
Set customObj = ThisDrawing.ModelSpace.AddCustomObjec("AsdkSquareWrapper")
Вроде того

Re: Кто работал с Com Wrapper в ObjectARX?

Вызывается ошибка -2145320894(80210042)
???

Re: Кто работал с Com Wrapper в ObjectARX?

Я с васиком не очень хорошо знаком :)
Вот что я делал на C++ - добавление нового Wall (ADT объект)

=== 8< ===
    CWinApp *pApp = acedGetAcadWinApp();
    if( pApp == NULL )
        return;
    IAecArchBaseApplication aecApp( pApp->GetIDispatch( FALSE ) );
    IAecArchBaseDocument aecDoc( aecApp.GetActiveDocument() );
    IAcadModelSpace *pModelSpace = NULL;
    HRESULT hRes = aecDoc.GetModelSpace()->QueryInterface( IID_IAcadModelSpace, (PVOID *)&pModelSpace );
    if( FAILED( hRes ) )
        return;
    LPDISPATCH pWallDisp = NULL;
    USES_CONVERSION;
    hRes = pModelSpace->AddCustomObject( T2OLE("AecWall"), &pWallDisp );
    if( FAILED( hRes ) )
        return;
    IAecWall wall( pWallDisp );
=== 8< ===

Re: Кто работал с Com Wrapper в ObjectARX?

Спасибо за помощь:)
Но хотелось бы всетаки узнать как на VBA этот объект(AsdkSquareWrapper)
вставляли в чертеж