Community
Dynamic Blocks Forum
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

ARX 19 to ARX 20 migration - Compile errors in axtempl.h, dynpropmgr.h

5 REPLIES 5
Reply
Message 1 of 6
mwst
602 Views, 5 Replies

ARX 19 to ARX 20 migration - Compile errors in axtempl.h, dynpropmgr.h

Hi guys,

 

I want to get my code building with ARX 20 libraries. The code is building and running fine with ARX 19. Here are the steps I took.

 

1. First migrate the solution and projects from VS2010 to VS2012. Then make change in configurations that build using ARX19 to use the same old platformtoolset of VS2010. So now code builds using same version of ARX and same toolset (ARX 19/ VS2010), just in new IDE. All is good.

 

2. Now added new solution and project configurations to build the code using ARX20 libraries and VS2012 tools.

 

First I got a bunch of compile errors in DBX project. Turns out VCInstallDir/include/memory file is not included. I added that manually. Now DBX builds fine.

 

Second, I get a bunch of errors while building in ARX project. I just compiled one file "stdafx.cpp" and I am attaching the build log below. Most of the errors seem to be in ARX include files. What is the best way to fix them?

 

Thanks in advance,

 

1>------ Build started: Project: ARX, Configuration: R20_Debug x64 ------

1>Build started 6/27/2014 3:35:06 PM.

1>ClCompile:

1>  StdAfx.cpp

1>  Building debug version of this module to be used with non-debug/Prod AutoCAD

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\axtempl.h(140): error C2143: syntax error : missing ',' before '<'

1>          d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\axtempl.h(167) : see reference to class template instantiation 'CProxy_AcadObjectEvents<T>' being compiled

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\axtempl.h(171): error C2143: syntax error : missing ',' before '<'

1>          d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\axtempl.h(198) : see reference to class template instantiation 'CProxy_PropertyNotifySink<T>' being compiled

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\axtempl.h(211): error C2143: syntax error : missing ',' before '<'

1> d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\axtempl.h(339) : see reference to class template instantiation 'IAcadBaseObjectImpl<T,pclsid>' being compiled

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\axtempl.h(572): error C2143: syntax error : missing ',' before '<'

1>          d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\axtempl.h(712) : see reference to class template instantiation 'IAcadObjectDispatchImpl<C,pclsid,T,piid,plibid,wMajor,wMinor,tihclass>' being compiled

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\axtempl.h(968): error C2143: syntax error : missing ',' before '<'

1>          d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\axtempl.h(1088) : see reference to class template instantiation 'IAcadBaseSubEntityImpl<C,pclsid,T,piid,plibid,wMajor,wMinor,tihclass>' being compiled

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynpropmgr.h(53): error C2143: syntax error : missing ';' before '*'

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynpropmgr.h(53): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynpropmgr.h(120): error C2065: 'CComPtr' : undeclared identifier

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynpropmgr.h(120): error C2275: 'IPropertyManager' : illegal use of this type as an expression

1>          d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynprops.h(448) : see declaration of 'IPropertyManager'

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynpropmgr.h(120): error C2065: 'pPropMan' : undeclared identifier

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynpropmgr.h(125): error C2065: 'pPropMan' : undeclared identifier

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynpropmgr.h(129): error C2065: 'pPropMan' : undeclared identifier

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynpropmgr.h(133): error C2065: 'pPropMan' : undeclared identifier

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynpropmgr.h(134): error C2065: 'pPropMan' : undeclared identifier

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynpropmgr.h(138): error C2065: 'pPropMan' : undeclared identifier

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynpropmgr.h(140): error C2039: 'pfnCreateInstance' : is not a member of '_OPM_DYNPROP_ENTRY'

1>          d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynpropmgr.h(52) : see declaration of '_OPM_DYNPROP_ENTRY'

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynpropmgr.h(142): error C2065: 'pPropMan' : undeclared identifier

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynpropmgr.h(142): error C2227: left of '->AddProperty' must point to class/struct/union/generic type

1>          type is ''unknown-type''

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynpropmgr.h(146): error C2039: 'pfnCreateInstance' : is not a member of '_OPM_DYNPROP_ENTRY'

1>          d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynpropmgr.h(52) : see declaration of '_OPM_DYNPROP_ENTRY'

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynpropmgr.h(173): error C2065: 'CComPtr' : undeclared identifier

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynpropmgr.h(173): error C2275: 'IPropertyManager' : illegal use of this type as an expression

1>          d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynprops.h(448) : see declaration of 'IPropertyManager'

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynpropmgr.h(173): error C2065: 'pPropMan' : undeclared identifier

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynpropmgr.h(176): error C2065: 'pPropMan' : undeclared identifier

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynpropmgr.h(180): error C2065: 'pPropMan' : undeclared identifier

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynpropmgr.h(184): error C2065: 'pPropMan' : undeclared identifier

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynpropmgr.h(185): error C2065: 'pPropMan' : undeclared identifier

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynpropmgr.h(190): error C2065: 'pPropMan' : undeclared identifier

1>d:\projects\trunk\third_party\autodesk\r20\objectarx\inc\dynpropmgr.h(190): error C2227: left of '->RemoveProperty' must point to class/struct/union/generic type

1>          type is ''unknown-type''

1>  ATL COM Included

1>

1>Build FAILED.

1>

1>Time Elapsed 00:00:05.42

========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

 

5 REPLIES 5
Message 2 of 6
mwst
in reply to: mwst

Here is some additional info. The line 140 in axtempl.h where I get compile error is the line that starts with public IConnectionPointImpl in code below. Basically it cannot find IConnectionPointImpl.

 

template

<classT>

class

CProxy_AcadObjectEvents :

   

publicIConnectionPointImpl<T, &IID_IAcadObjectEvents, CComDynamicUnkArray>

{

public

:

  

The R19 version of the file looks like following

class CProxy_PropertyNotifySink :
    public ATL::IConnectionPointImpl<T, &IID_IPropertyNotifySink, ATL::CComDynamicUnkArray>
{
public:

 

So the difference is the presence of the word ATL::

Message 3 of 6
mwst
in reply to: mwst

Never mind this question. Some changes were done on our side in ARX 19 and when those changes were done in ARX 20, everything is building fine.

Message 4 of 6
mwst
in reply to: mwst

Question to moderator,

 

How do I delete this topic? It got posted in the wrong section. It shouldn't be in the dynamic blocks. It should be in the ObjectARX.

Message 5 of 6
ChengboZhang
in reply to: mwst

How to solve this problem? thanks

Message 6 of 6
ChengboZhang
in reply to: mwst

How to make through? thanks

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

”Boost

 

”Tips

 

”Services