Share

.NET Migration Guide

Description

Information about how to update existing .NET applications to work with AutoCAD 2025 is provided here.

AutoCAD 2025 breaks binary compatibility with AutoCAD 2021 through AutoCAD 2024. ObjectARX applications developed for AutoCAD 2024 and earlier releases must be recompiled before they can be used with AutoCAD 2025-based products. The following sections list API changes made to this release. If your application uses any of these APIs, you will need to update your code accordingly.

Additionally, Managed .NET applications should be updated to target.NET 8.0 for AutoCAD 2025 rather than the previous supported version of 4.8 .NET Framework. In addition to changing .NET versions and prior compiling your project, the following needs to be added to the ItemGroup element of your CSPROJ or VBPROJ file:

<FrameworkReference Include="Microsoft.WindowsDesktop.App"></FrameworkReference>

Moved .NET API

Previous Class
Class
Topic
Declaration
Manager2
Manager
public GraphicsKernel ActiveGraphicsKernels;
Manager2
Manager
public Model ActiveModels;
Manager2
Manager
public Model[] GetActiveModels(Database db);

Changed .NET API

Class
Topic
Previous Declaration
Declaration
AutoCAD 2024 and earlierpublic class ChildItemVisiblityChangedEventArgs : EventArgs;
internal class ChildItemVisiblityChangedEventArgs : EventArgs;
BeginExtractionEventArgs
AutoCAD 2024public void QueueForExtraction(ObjectId idObject, string viewableId);
public void QueueForExtraction(ObjectId idObject, string viewableId);
Configuration
AutoCAD 2024 and earlierpublic int GetFeatureAvailableVal(UniqueString feature);
public int GetFeatureAvailableVal(System::UInt64 A_0);
Configuration
AutoCAD 2024 and earlierpublic int GetFeatureRecommendedVal(UniqueString feature);
public int GetFeatureRecommendedVal(System::UInt64 A_0);
Configuration
AutoCAD 2024 and earlierpublic int GetFeatureUsedVal(UniqueString feature);
public int GetFeatureUsedVal(System::UInt64 A_0);
Configuration
AutoCAD 2015 through AutoCAD 2024public bool IsFeatureAvailable(UniqueString feature);AutoCAD 2014 and earlier[return: MarshalAs(UnmanagedType.U1)]public bool IsFeatureAvailable(Autodesk.AutoCAD.GraphicsSystem.HardwareFeature feature);
public bool IsFeatureAvailable(System::UInt64 A_0);
Configuration
AutoCAD 2015 through AutoCAD 2024public bool IsFeatureEnabled(UniqueString feature);AutoCAD 2014 and earlier[return: MarshalAs(UnmanagedType.U1)]public bool IsFeatureEnabled(Autodesk.AutoCAD.GraphicsSystem.HardwareFeature feature);
public bool IsFeatureEnabled(System::UInt64 A_0);
Configuration
AutoCAD 2015 through AutoCAD 2024public bool IsFeatureRecommended(UniqueString feature);AutoCAD 2014 and earlier[return: MarshalAs(UnmanagedType.U1)]public bool IsFeatureRecommended(Autodesk.AutoCAD.GraphicsSystem.HardwareFeature feature);
public bool IsFeatureRecommended(System::UInt64 A_0);
Configuration
AutoCAD 2015 through AutoCAD 2024public void SetFeatureEnabled(UniqueString feature, [MarshalAs(UnmanagedType.U1)] bool enable);AutoCAD 2014 and earlierpublic void SetFeatureEnabled(Autodesk.AutoCAD.GraphicsSystem.HardwareFeature feature,[MarshalAs(UnmanagedType.U1)] bool enable);
public void SetFeatureEnabled(System::UInt64 __unnamed000, [MarshalAs(UnmanagedType.U1)] bool enable);
Configuration
AutoCAD 2024 and earlierpublic void SetFeatureUsedVal(UniqueString feature, int value);
public void SetFeatureUsedVal(System::UInt64 __unnamed000, int value);
CustomToolBase
AutoCAD 2024 and earlierpublic Guid FlayoutPackageID;
public Guid FlyoutPackageID;
DxExtractionSettings
AutoCAD 2024 and earlierpublic static IDxExtractionSettings FromFile(string filename);
public static IDxExtractionSettings FromFile(string filename, bool ingoreTypeDiscovery, bool extractBlockOnly);
EffectStatus
AutoCAD 2024 and earlierpublic UniqueString EffectUniqueString;
public System::UInt64 EffectUniqueString;
KernelDescriptor
AutoCAD 2024 and earlierpublic void addRequirement(UniqueString capability);
public void addRequirement(System::UInt64 A_0);
KernelDescriptor
AutoCAD 2024 and earlierpublic static UniqueString Drawing2D;
public static System::UInt64 Drawing2D;
KernelDescriptor
AutoCAD 2024 and earlierpublic static UniqueString Drawing3D;
public static System::UInt64 Drawing3D;
KernelDescriptor
AutoCAD 2024 and earlierpublic static UniqueString Drawing3D2;
public static System::UInt64 Drawing3D2;
KernelDescriptor
AutoCAD 2024 and earlierpublic static UniqueString RapidRTRendering3D;
public static System::UInt64 RapidRTRendering3D;
KernelDescriptor
AutoCAD 2024 and earlierpublic static UniqueString Selection3D;
public static System::UInt64 Selection3D;
KernelDescriptor
AutoCAD 2024 and earlierpublic bool supports(UniqueString capability);
public bool supports(System::UInt64 A_0);
SelectionSet
AutoCAD 2024 and earlierprotected SelectionSet();
protected SelectionSet(AdsName ss);
StatusBarItem
AutoCAD 2024 and earlierpublic void DisplayContextMenu(ContextMenu menu, Point p);
public void DisplayContextMenu(ContextMenuStrip menu, Point p);

Removed .NET API

Class
Declaration
Use Instead
public class Manager2 : Manager;
Autodesk.Windows.Forms.DataGridViewExtensions
public static void EnableAutoScaleHeaderSize(this DataGridView dataGridView, ContainerControl container);
LenientResourceManager
public LenientResourceManager(Type t);
Runtime
public sealed class LenientResourceManager : ResourceManager

Changed Enums

Class
Topic
Previous Declaration
Declaration
public enum Version { CurrentVersion = 0x13, TwoThousandEight = 2, TwoThousandEighteen = 12, TwoThousandEleven = 5, TwoThousandFifteen = 9, TwoThousandFourteen = 8, TwoThousandNine = 3, TwoThousandNineteen = 13, TwoThousandSeven = 1, TwoThousandSeventeen = 11, TwoThousandSix = 0, TwoThousandSixteen = 10, TwoThousandTen = 4, TwoThousandThirteen = 7, TwoThousandTwelve = 6, TwoThousandTwenty = 14, TwoThousandTwentyFour = 0x12, TwoThousandTwentyOne = 15, TwoThousandTwentyThree = 0x11, TwoThousandTwentyTwo = 0x10, Unknown = 20}
public enum Version { CurrentVersion = 20, TwoThousandEight = 2, TwoThousandEighteen = 12, TwoThousandEleven = 5, TwoThousandFifteen = 9, TwoThousandFourteen = 8, TwoThousandNine = 3, TwoThousandNineteen = 13, TwoThousandSeven = 1, TwoThousandSeventeen = 11, TwoThousandSix = 0, TwoThousandSixteen = 10, TwoThousandTen = 4, TwoThousandThirteen = 7, TwoThousandTwelve = 6, TwoThousandTwenty = 14, TwoThousandTwentyFive = 0x13, TwoThousandTwentyFour = 0x12, TwoThousandTwentyOne = 15, TwoThousandTwentyThree = 0x11, TwoThousandTwentyTwo = 0x10, Unknown = 0x15}
public enum MaintenanceReleaseVersion { Release0 = 0, Release1 = 1, Release10 = 10, Release100 = 100, Release101 = 0x65, Release102 = 0x66, Release103 = 0x67, Release104 = 0x68, Release105 = 0x69, Release106 = 0x6a, Release107 = 0x6b, Release108 = 0x6c, Release109 = 0x6d, Release11 = 11, Release110 = 110, Release111 = 0x6f, Release112 = 0x70, Release113 = 0x71, Release114 = 0x72, Release115 = 0x73, Release116 = 0x74, Release117 = 0x75, Release118 = 0x76, Release119 = 0x77, Release12 = 12, Release120 = 120, Release121 = 0x79, Release122 = 0x7a, Release123 = 0x7b, Release124 = 0x7c, Release125 = 0x7d, Release126 = 0x7e, Release127 = 0x7f, Release128 = 0x80, Release129 = 0x81, Release13 = 13, Release130 = 130, Release131 = 0x83, Release132 = 0x84, Release133 = 0x85, Release134 = 0x86, Release135 = 0x87, Release136 = 0x88, Release137 = 0x89, Release138 = 0x8a, Release139 = 0x8b, Release14 = 14, Release140 = 140, Release141 = 0x8d, Release142 = 0x8e, Release143 = 0x8f, Release144 = 0x90, Release145 = 0x91, Release146 = 0x92, Release147 = 0x93, Release148 = 0x94, Release149 = 0x95, Release15 = 15, Release150 = 150, Release151 = 0x97, Release152 = 0x98, Release153 = 0x99, Release154 = 0x9a, Release155 = 0x9b, Release156 = 0x9c, Release157 = 0x9d, Release158 = 0x9e, Release159 = 0x9f, Release16 = 0x10, Release160 = 160, Release17 = 0x11, Release18 = 0x12, Release19 = 0x13, Release2 = 2, Release20 = 20, Release2010Max = 0xff, Release2010Newest = 0xe2, Release21 = 0x15, Release22 = 0x16, Release23 = 0x17, Release24 = 0x18, Release25 = 0x19, Release26 = 0x1a, Release27 = 0x1b, Release28 = 0x1c, Release29 = 0x1d, Release3 = 3, Release30 = 30, Release31 = 0x1f, Release32 = 0x20, Release33 = 0x21, Release34 = 0x22, Release35 = 0x23, Release36 = 0x24, Release37 = 0x25, Release38 = 0x26, Release39 = 0x27, Release4 = 4, Release40 = 40, Release41 = 0x29, Release42 = 0x2a, Release43 = 0x2b, Release44 = 0x2c, Release45 = 0x2d, Release46 = 0x2e, Release47 = 0x2f, Release48 = 0x30, Release49 = 0x31, Release5 = 5, Release50 = 50, Release51 = 0x33, Release52 = 0x34, Release53 = 0x35, Release54 = 0x36, Release55 = 0x37, Release56 = 0x38, Release57 = 0x39, Release58 = 0x3a, Release59 = 0x3b, Release6 = 6, Release60 = 60, Release61 = 0x3d, Release62 = 0x3e, Release63 = 0x3f, Release64 = 0x40, Release65 = 0x41, Release66 = 0x42, Release67 = 0x43, Release68 = 0x44, Release69 = 0x45, Release7 = 7, Release70 = 70, Release71 = 0x47, Release72 = 0x48, Release73 = 0x49, Release74 = 0x4a, Release75 = 0x4b, Release76 = 0x4c, Release77 = 0x4d, Release78 = 0x4e, Release79 = 0x4f, Release8 = 8, Release80 = 80, Release81 = 0x51, Release82 = 0x52, Release83 = 0x53, Release84 = 0x54, Release85 = 0x55, Release86 = 0x56, Release87 = 0x57, Release88 = 0x58, Release89 = 0x59, Release9 = 9, Release90 = 90, Release91 = 0x5b, Release92 = 0x5c, Release93 = 0x5d, Release94 = 0x5e, Release95 = 0x5f, Release96 = 0x60, Release97 = 0x61, Release98 = 0x62, Release99 = 0x63, ReleaseCheckExtended = 0x7d, ReleaseCurrent = 0xf1, ReleaseExtendedCurrent = 0x123, ReleaseExtendedNewest = 1, ReleaseMax = 0x7fffffff, ReleaseNewest = 0xf1, ReleaseUnknown = 0x7ffffffe}
public enum MaintenanceReleaseVersion { Release0 = 0, Release1 = 1, Release10 = 10, Release100 = 100, Release101 = 0x65, Release102 = 0x66, Release103 = 0x67, Release104 = 0x68, Release105 = 0x69, Release106 = 0x6a, Release107 = 0x6b, Release108 = 0x6c, Release109 = 0x6d, Release11 = 11, Release110 = 110, Release111 = 0x6f, Release112 = 0x70, Release113 = 0x71, Release114 = 0x72, Release115 = 0x73, Release116 = 0x74, Release117 = 0x75, Release118 = 0x76, Release119 = 0x77, Release12 = 12, Release120 = 120, Release121 = 0x79, Release122 = 0x7a, Release123 = 0x7b, Release124 = 0x7c, Release125 = 0x7d, Release126 = 0x7e, Release127 = 0x7f, Release128 = 0x80, Release129 = 0x81, Release13 = 13, Release130 = 130, Release131 = 0x83, Release132 = 0x84, Release133 = 0x85, Release134 = 0x86, Release135 = 0x87, Release136 = 0x88, Release137 = 0x89, Release138 = 0x8a, Release139 = 0x8b, Release14 = 14, Release140 = 140, Release141 = 0x8d, Release142 = 0x8e, Release143 = 0x8f, Release144 = 0x90, Release145 = 0x91, Release146 = 0x92, Release147 = 0x93, Release148 = 0x94, Release149 = 0x95, Release15 = 15, Release150 = 150, Release151 = 0x97, Release152 = 0x98, Release153 = 0x99, Release154 = 0x9a, Release155 = 0x9b, Release156 = 0x9c, Release157 = 0x9d, Release158 = 0x9e, Release159 = 0x9f, Release16 = 0x10, Release160 = 160, Release17 = 0x11, Release18 = 0x12, Release19 = 0x13, Release2 = 2, Release20 = 20, Release2010Max = 0xff, Release2010Newest = 0xe2, Release21 = 0x15, Release22 = 0x16, Release23 = 0x17, Release24 = 0x18, Release25 = 0x19, Release26 = 0x1a, Release27 = 0x1b, Release28 = 0x1c, Release29 = 0x1d, Release3 = 3, Release30 = 30, Release31 = 0x1f, Release32 = 0x20, Release33 = 0x21, Release34 = 0x22, Release35 = 0x23, Release36 = 0x24, Release37 = 0x25, Release38 = 0x26, Release39 = 0x27, Release4 = 4, Release40 = 40, Release41 = 0x29, Release42 = 0x2a, Release43 = 0x2b, Release44 = 0x2c, Release45 = 0x2d, Release46 = 0x2e, Release47 = 0x2f, Release48 = 0x30, Release49 = 0x31, Release5 = 5, Release50 = 50, Release51 = 0x33, Release52 = 0x34, Release53 = 0x35, Release54 = 0x36, Release55 = 0x37, Release56 = 0x38, Release57 = 0x39, Release58 = 0x3a, Release59 = 0x3b, Release6 = 6, Release60 = 60, Release61 = 0x3d, Release62 = 0x3e, Release63 = 0x3f, Release64 = 0x40, Release65 = 0x41, Release66 = 0x42, Release67 = 0x43, Release68 = 0x44, Release69 = 0x45, Release7 = 7, Release70 = 70, Release71 = 0x47, Release72 = 0x48, Release73 = 0x49, Release74 = 0x4a, Release75 = 0x4b, Release76 = 0x4c, Release77 = 0x4d, Release78 = 0x4e, Release79 = 0x4f, Release8 = 8, Release80 = 80, Release81 = 0x51, Release82 = 0x52, Release83 = 0x53, Release84 = 0x54, Release85 = 0x55, Release86 = 0x56, Release87 = 0x57, Release88 = 0x58, Release89 = 0x59, Release9 = 9, Release90 = 90, Release91 = 0x5b, Release92 = 0x5c, Release93 = 0x5d, Release94 = 0x5e, Release95 = 0x5f, Release96 = 0x60, Release97 = 0x61, Release98 = 0x62, Release99 = 0x63, ReleaseCheckExtended = 0x7d, ReleaseCurrent = 0x141, ReleaseExtendedCurrent = 0x173, ReleaseExtendedNewest = 1, ReleaseMax = 0x7fffffff, ReleaseNewest = 0x141, ReleaseUnknown = 0x7ffffffe}
public enum DeviationType { MaxDevForCircle, MaxDevForCurve, MaxDevForBoundary, MaxDevForIsoline, MaxDevForFacet}
public enum DeviationType { MaxDevForCircle, MaxDevForCurve, MaxDevForBoundary, MaxDevForIsoline, MaxDevForFacet, MaxDevForHatch}
AutoCAD 2024 and earlierpublic enum GeomapType{ NoMap, Aerial, Road, Hybrid}
public enum GeomapType { NoMap, Aerial, Road, Hybrid, EsriImagery, EsriOpenStreetMap, EsriStreets, EsriLightGray, EsriDarkGray}
AdoOutput
public enum OutputType { none, xls, mdb, xml, csvSystemDefault, csvAnsi, csvUnicode, tabSystemDefault, tabAnsi, tabUnicode}
public enum OutputType { none, xlsx, mdb, xml, csvSystemDefault, csvAnsi, csvUnicode, tabSystemDefault, tabAnsi, tabUnicode}

Was this information helpful?