AutoCAD 2013 + Net48

ModPlus
Enthusiast
Enthusiast

AutoCAD 2013 + Net48

ModPlus
Enthusiast
Enthusiast

Today I tried rebuilding my AutoCAD 2013 plugin from Net Framework 4.5 to Net Framework 4.8 and it loaded and worked without problems. I'm more than sure this was not possible to do before.

Why did this work? What could be the implications of this? Maybe it depends on the version of Windows somehow?

0 Likes
Reply
Accepted solutions (1)
841 Views
11 Replies
Replies (11)

norman.yuan
Mentor
Mentor
Accepted solution

There should not be any implications, because .NET framework is very well backward compatible, meaning, application/code built against older version of .NET framework would mostly work on a computer with newer .NET framework installed. I say "mostly", just means that you still need do your test as deep as you can, there is no 100% guarantees. Still using Acad2013? ouch!

 

Norman Yuan

Drive CAD With Code

EESignature

0 Likes

ModPlus
Enthusiast
Enthusiast

@norman.yuan wrote:

Still using Acad2013? ouch!


I don't use Acad2013, I write plugins for it. And yes - I still have users on versions 2013-2018

0 Likes

_gile
Mentor
Mentor

Hi,

Every .NET plugin I've published on the App Store uses the same DLL built with AutoCAD 2013 and .NET Framework 4.0 and works with AutoCAD 2024.



Gilles Chanteau
Programmation AutoCAD LISP/.NET
GileCAD
GitHub

0 Likes

ModPlus
Enthusiast
Enthusiast

@_gile wrote:

Hi,

Every .NET plugin I've published on the App Store uses the same DLL built with AutoCAD 2013 and .NET Framework 4.0 and works with AutoCAD 2024.


It is obvious that plugins written in Net4.0 will work in all young versions of Autocad. But problems arise when there is a need to use third-party libraries written in later versions of Net Framework

0 Likes

_gile
Mentor
Mentor

@ModPlus wrote:


It is obvious that plugins written in Net4.0 will work in all young versions of Autocad. But problems arise when there is a need to use third-party libraries written in later versions of Net Framework


As far as I know, and as @norman.yuan said, "each new version of .NET Framework adds new features but retains features from previous versions" (see this topic).



Gilles Chanteau
Programmation AutoCAD LISP/.NET
GileCAD
GitHub

0 Likes

ModPlus
Enthusiast
Enthusiast

Thank you all. I will transfer all plugins to Net48 and hope I won't run into any problems

0 Likes

Alfred.NESWADBA
Consultant
Consultant

Hi,

 

>> I will transfer all plugins to Net48 and hope I won't run into any problems

The risk you have for such old AutoCAD's like you mentioned version 2013 ... you may have systems that don't have .NET Framework 4.8 installed (because these old AutoCAD versions don't need them, so OS maybe old too), then your plugin will fail.

 

- alfred -

------------------------------------------------------------------------------------
Alfred NESWADBA
ISH-Solutions GmbH / Ingenieur Studio HOLLAUS
www.ish-solutions.at ... blog.ish-solutions.at ... LinkedIn ... CDay 2024
------------------------------------------------------------------------------------

(not an Autodesk consultant)

ModPlus
Enthusiast
Enthusiast

@Alfred.NESWADBA wrote:

Hi,

 

>> I will transfer all plugins to Net48 and hope I won't run into any problems

The risk you have for such old AutoCAD's like you mentioned version 2013 ... you may have systems that don't have .NET Framework 4.8 installed (because these old AutoCAD versions don't need them, so OS maybe old too), then your plugin will fail.

 

- alfred -


If among thousands of users there are a few dozen who do not switch to the latest versions of operating systems and software, it is no reason not to evolve your product. IMHO

0 Likes

_gile
Mentor
Mentor

@ModPlus wrote:


If among thousands of users there are a few dozen who do not switch to the latest versions of operating systems and software, it is no reason not to evolve your product. IMHO


If so, you can have both a 'vintage' version (for AutoCAD 2013 to 2024 targeting .NET Framework 4.0) and an 'up-to-date' one (for AutoCAD 2021 to 2024 targeting .NET Framework 4.8).

In either case, you'll soon need to upgrade by creating a new (non-compatible) version for AutoCAD 2025 targeting .NET (Core) 8.0 (see this topic).



Gilles Chanteau
Programmation AutoCAD LISP/.NET
GileCAD
GitHub

0 Likes

ActivistInvestor
Advisor
Advisor

There are ways to ensure that required versions of the framework are installed when using an installer app. If they're not installed, they get downloaded and installed as part of the install process, so it shouldn't be too much of a concern, as long as there is some kind of check during installation.

 

The larger issue with supporting very old AutoCAD releases, is that some of them were released before the AutoCAD .NET API lapsed into 'maintenance mode', which means there are significant, breaking API changes that must be accounted for. There have been quite a few breaking changes over the years, that have caused a lot of headaches for myself and other developers. Examples are releases of AutoCAD that predate the separation of the API (e.g., AcCoreMgd.dll, which was often referred to as the big split), and the transition away from the fiber threading model.

 

Autodesk could have resolved some of those issues internally and avoided breaking changes, but unfortunately they chose a different path.

 

So I'm not sure what the fuss over framework versions is about, considering all of the other headaches that come with supporting very old product releases in a single unified codebase.

0 Likes

ActivistInvestor
Advisor
Advisor

@Alfred.NESWADBA wrote:

Hi,

 

>> I will transfer all plugins to Net48 and hope I won't run into any problems

The risk you have for such old AutoCAD's like you mentioned version 2013 ... you may have systems that don't have .NET Framework 4.8 installed (because these old AutoCAD versions don't need them, so OS maybe old too), then your plugin will fail.

 

- alfred -


See my other reply. There's much more to portability than merely the framework version, which is a minor detail compared to breaking changes in the API across all supported releases.

0 Likes