One, solved.

 

If the third parameter (bActivate) is true, then CAD2010 will crash. CAD2018 will not crash.

 

2, acad.rx will automatically load arx, but only the first acad.rx will work if there are multiple search directories with acad.rx. Solution: Use acad. LSP. If multiple search directories have acad. LSP, only one acad. LSP takes effect.

3, write a CRX, can’t load. The path of the required DLL has been added to the search directory of Option. Later, it is found that the directory is not trusted, and acad.exe is not trusted. Accoreconsole. exe will not prompt, direct failure! Problem environment: CAD2018.

4, long appID = 0; bool b2 = acedAddObjectContextMenu(pClass, p , &appID); // Add the entity object context menu to the AutoCAD application

– low chance of crash in CAD2010, no problem in CAD2010, CAD2016, CAD2017, CAD2018.

to

static long appID = 0; bool b2 = acedAddObjectContextMenu(pClass, p , &appID); // Add the entity object context menu to the AutoCAD application

That’s fine.

Possible causes:

AcedAddObjectContextMenu records and uses the address of the appID.

 

 

2. Unresolved.

1, custom entities, highlighting the problem. Requirement: a custom entity that I want to highlight with a border. A,subHighlight subUnhighlight is const, cannot modify a member variable mutable bool m_bHighLight; WordDraw recordGraphicsModified subHighlight cannot call wordDraw recordGraphicsModified,subHighlight cannot call wordDraw recordGraphicsModified either actrTransactionManager->queueForGraphicsFlush(); actrTransactionManager->flushGraphics(); acedUpdateDisplay();

2. Custom entities, derived from annotations, capture points all messed up.