I have the task to deploy some addin to different versions of Autocad Map.
Currently, I have version 2020 installed in my machine, and I have successfully developed a working addin (just a .dll file loaded by NETLOAD) using the Autocad Map dlls found in my machine (namely ManagedMapApi.dll and some of the OSGEO.MapGuide._____.dll files).
Now some people in the company are starting to use Autocad Civil / Map 3D 2022 and I need to update my addin for them. Is there a way to do that without having to install version 2022 in my machine?
Solved! Go to Solution.
I have the task to deploy some addin to different versions of Autocad Map.
Currently, I have version 2020 installed in my machine, and I have successfully developed a working addin (just a .dll file loaded by NETLOAD) using the Autocad Map dlls found in my machine (namely ManagedMapApi.dll and some of the OSGEO.MapGuide._____.dll files).
Now some people in the company are starting to use Autocad Civil / Map 3D 2022 and I need to update my addin for them. Is there a way to do that without having to install version 2022 in my machine?
Solved! Go to Solution.
Solved by norman.yuan. Go to Solution.
>>and I need to update my addin for them<<.
there should not be any problem. you said "update" so that implies they are using it already?
when you attach the autocad API references to build your dll you have "copy local" set to false. that means your app will find them when they are required.
>>and I need to update my addin for them<<.
there should not be any problem. you said "update" so that implies they are using it already?
when you attach the autocad API references to build your dll you have "copy local" set to false. that means your app will find them when they are required.
more reading - not sure these answer your questions. you must have a reason for not being on the same version as the users you are developing apps for.
https://forums.autodesk.com/t5/net/net-framework-support/m-p/9403930
https://forums.autodesk.com/t5/net/net-framework-4-8/m-p/11076028
FWIW - I have just updated a dll for use in C3D 2023 - target framework is 4.7.2
more reading - not sure these answer your questions. you must have a reason for not being on the same version as the users you are developing apps for.
https://forums.autodesk.com/t5/net/net-framework-support/m-p/9403930
https://forums.autodesk.com/t5/net/net-framework-4-8/m-p/11076028
FWIW - I have just updated a dll for use in C3D 2023 - target framework is 4.7.2
What @fieldguy said is correct in general. That is, if your plugin is PURE .NET API development. The only chance it would not work is that your development is targeting later .NET framework, say 4.8, while your user who use the same version of AutoCAD MAP/C3D with older version of Framework (say, 4.6/7) and the computer does not have 4.8 installed. Since you are saying you use Acad2020, and your users could use newer Acad, I do not see you would have issue with your PURE .NET API code.
I emphasize "PURE" .NET API. If your project somehow uses COM interop with early binding (e.g. you set references to Autodesk.AutoCAD.Interop/Common.dll, then yes, you makes your project version dependent, that is the nature of COM API. If you really cannot avoid to use COM API here and there, try late binding whenever it is possible to avoid making your code version dependent.
Norman Yuan
What @fieldguy said is correct in general. That is, if your plugin is PURE .NET API development. The only chance it would not work is that your development is targeting later .NET framework, say 4.8, while your user who use the same version of AutoCAD MAP/C3D with older version of Framework (say, 4.6/7) and the computer does not have 4.8 installed. Since you are saying you use Acad2020, and your users could use newer Acad, I do not see you would have issue with your PURE .NET API code.
I emphasize "PURE" .NET API. If your project somehow uses COM interop with early binding (e.g. you set references to Autodesk.AutoCAD.Interop/Common.dll, then yes, you makes your project version dependent, that is the nature of COM API. If you really cannot avoid to use COM API here and there, try late binding whenever it is possible to avoid making your code version dependent.
Norman Yuan
Can't find what you're looking for? Ask the community or share your knowledge.