C3D-0137 · READ-ONLY: probe for a text-along-curve path [ARCTEXT-PROBE-2] done
Lists every registered runtime class whose name mentions TEXT, checks whether Editor.Command or Document.SendStringToExecute are callable from a ticket script, and tests whether an ArcAlignedText or RText class is loaded in this session. Draws nothing.
C# payload
// READ-ONLY PROBE for a real text-along-a-curve path. Nothing is drawn.
// Runtime types are fully qualified - RXObject/RXClass/SystemObjects are not in ScriptRunner's imports.
Log("drawing: " + Db.Filename);
Log("=== registered classes mentioning TEXT ===");
try {
var d = Autodesk.AutoCAD.Runtime.SystemObjects.ClassDictionary;
foreach (System.Collections.DictionaryEntry de in d) {
string nm = de.Key.ToString();
if (nm.ToUpper().IndexOf("TEXT") >= 0) Log(" " + nm);
}
} catch (System.Exception ex) { Log("class dictionary: " + ex.Message); }
Log("");
Log("=== can a script drive a command? ===");
try { Log("Editor.Command exists: " + (Ed.GetType().GetMethod("Command") != null)); }
catch (System.Exception ex) { Log("Editor.Command: " + ex.Message); }
try { Log("Document.SendStringToExecute exists: " + (Doc.GetType().GetMethod("SendStringToExecute") != null)); }
catch (System.Exception ex) { Log("SendStringToExecute: " + ex.Message); }
Log("");
Log("=== is an ArcAlignedText class loaded? ===");
foreach (string cls in new string[] { "AcDbArcAlignedText", "ArcAlignedText", "AcDbRText", "RText" }) {
try {
var c = Autodesk.AutoCAD.Runtime.RXClass.GetClass(typeof(Autodesk.AutoCAD.DatabaseServices.Entity));
bool found = false;
var d2 = Autodesk.AutoCAD.Runtime.SystemObjects.ClassDictionary;
foreach (System.Collections.DictionaryEntry de in d2)
if (de.Key.ToString() == cls) { found = true; break; }
Log(" " + cls + ": " + (found ? "REGISTERED" : "not registered"));
} catch (System.Exception ex) { Log(" " + cls + ": " + ex.Message); }
}
Result
Log
drawing: C:\Users\sanja\OneDrive\_SurveyDisco\260802 - 4082 Sweetbriar Ln, Forest Park, GA 30297, USA\260802 - 4082 Sweetbriar Ln.dwg === registered classes mentioning TEXT === AcDb::TextHorzMode AcDb::TextVertMode AcDbAlignedDimensionObjectContextData AcDbAngularDimensionObjectContextData AcDbAnnotScaleObjectContextData AcDbAssocMTextPersSubentIdPE AcDbAssocTextPersSubentIdPE AcDbBlkRefObjectContextData AcDbBlockPropertiesTableGripMenuContext AcDbBlockRefContext AcDbBlockRepresentationContext AcDbCachedBlockRefContext AcDbDetailSymbolDrawContext AcDbDiametricDimensionObjectContextData AcDbDimension2DimLineAndTextFacet AcDbDimension2ExtensionLineAndTextFacet AcDbDimensionObjectContextData AcDbDynamicBlockGripMenuContext AcDbEvalContext AcDbEvalContextIterator AcDbFcfObjectContextData AcDbGripMenuContext AcDbHatchScaleContextData AcDbHatchViewContextData AcDbLeaderObjectContextData AcDbMLeaderObjectContextData AcDbMLeaderStyle::TextAlignmentType AcDbMLeaderStyle::TextAngleType AcDbMLeaderStyle::TextAttachmentDirection AcDbMLeaderStyle::TextAttachmentType AcDbModelDocSymbolDrawContext AcDbMText AcDbMText::AttachmentPoint AcDbMText::ColumnType AcDbMText::FlowDirection AcDbMTextAttributeObjectContextData AcDbMTextObjectContextData AcDbObjectContext AcDbObjectContextAlDimPE AcDbObjectContextAngDimPE AcDbObjectContextBlkRefPE AcDbObjectContextCollection AcDbObjectContextCollectionIterator AcDbObjectContextData AcDbObjectContextDefaultPE AcDbObjectContextDimPE AcDbObjectContextDmDimPE AcDbObjectContextFcfPE AcDbObjectContextHatchPE AcDbObjectContextInterface AcDbObjectContextLeaderPE AcDbObjectContextManager AcDbObjectContextMLeaderPE AcDbObjectContextMTextPE AcDbObjectContextOrdDimPE AcDbObjectContextPE AcDbObjectContextRaDimLrgPE AcDbObjectContextRaDimPE AcDbObjectContextTextPE AcDbObjectHardPurgePE_AcDbTextStyleTableRecord AcDbOrdinateDimensionObjectContextData AcDbRadialDimensionLargeObjectContextData AcDbRadialDimensionObjectContextData AcDbSectionGripMenuContext AcDbSectionSymbolDrawContext AcDbSplineGripMenuContext AcDbTableGripMenuContext AcDbText AcDbText::AcTextAlignment AcDbTextObjectContextData AcDbTextStyleTable AcDbTextStyleTableRecord AcDbViewportGripMenuContext AcDcTextTransient AcDiBlockEditorContext AcDiContext AcDiContextBase AcDiDbObjectContext AcDiDrawingContext AcDiExternalReferenceContext AcDiGradientCreationContext AcDiHatchCreationContext AcDiMeasureGeomContext AcDiPaperSpaceContext AcDiRenderContext AcDiRolloverTipsContext AcDiRxObjectContext AcDiSelectionContext AcDiSunContext AcDiTextEditorContext AcDiViewportContext AcEdUIContext AcEdUiContextAttribute AcFloatContextMenuTransient AcGiContext AcGiContext2 AcGiContext3dDwf AcGiContextParallelDrawPE AcGiContextualColors AcGiContextualColors2 AcGiGenericTexture AcGiImageFileTexture AcGiImageTexture AcGiMarbleTexture AcGiMaterialTexture AcGiProceduralTexture AcGiTextStyle AcGiWoodTexture AcMapDMSETextStyle AcMapDMThematicTableItemLegendText AcMapDMThematicTableItemText AcMgContext AcMgContextualColors AcRxMemberQueryContext AcRxTextString AcRxUiCascadingContextMenuAttribute AcViewportContextColors AeccDbLabelStyleText AeccDbLabelStyleTextIterator AeccDbLabelStyleTextIteratorCurveOrSpiral AeccDbLabelStyleTextPropFieldObject AeccDbTesselatedText AecComponentExtentsFilter AeccProtExtCreatePointsBase AecDbCurveText AecDbDimensionGroupContextPE AecDbMvBlockRefAnnoScaleContextData AecDbMvBlockRefContextPE AecDbTextNote AecDimensionOverrideDataTargetExtLinePositions AecDimensionOverrideDataText AecEdUiContext AecGiContext AecMTextModifier AecQueryAcDbMText AecQueryAcDbText AecWallComponentExtentsFilter BEditContext CHlnkMenuContext Context DimHorizontalTextPosEnum DimTextDirectionEnum DimTextMovementEnum DimVerticalTextPosEnum ITextEditPE LabelGroupsInLabelSetExtensionObject MTextGripAppData OleScaleContextMenu SdskCurvedText === can a script drive a command? === Editor.Command exists: True Document.SendStringToExecute exists: True === is an ArcAlignedText class loaded? === AcDbArcAlignedText: not registered ArcAlignedText: not registered AcDbRText: not registered RText: not registered
Notes
What worked, what didn't, job-specific gotchas — flagged notes feed the recipes.
No notes yet.