I am an accomplished C#.net developer. Years ago I also did a ton of AutoLisp programming. I have a new client that wants me to build a suite of customized tools for their AutoCad users. In regard to this I have some questions:
Robert W.
AutoCAD's managed (.Net) API was first released for AutoCAD 2005. See http://through-the-interface.typepad.com/through_the_interface/2006/09/com_vs_net_in_a.html
Autodesk has improved/extended the API in each release since; which "minimum" version you need/should have is largely dependent on what the customer's requested customizations are.
For my part, I wouldn't want to return to a pre-Acad2010 .Net API. I've had to do far fewer 32-bit/64-bit versioning in my code since then and the Overrule APIs added in that version are very nice. VS2008 plays well with ACAD2010 and ACAD2011.
If you're needing to _purchase_ a newer AutoCAD, just join ADN for access to the latest version (http://usa.autodesk.com/adsk/servlet/item?siteID=123112&id=4888765)
-drg
Dan,
Thank you for that and for the TypePad blog link. A most interesting read.
While I, and the client, would also *like* to have the latest/greatest of everything, financial considerations sometimes dictate otherwise.
Reading through the blog entry, it sounds like VS2008 would work okay with AutoCad 2006 too? Would you agree or disagree?
Robert
It should work fine. I think you would have to target the .NET framework 2, but that's about it.
While I agree with Dan that the Overrules introduced in Acad 2010 are nifty, and the parametric constraints API in 2011, they are the only things about those newer API's that I would consider significantly different than the 2009, and maybe 2008 API's. (I actually skipped from 2007 to 2009).
That said, I would be reluctant to go back further than 2007 (I believe the improvements to the API were significant between 2006 and 2007), and even going back that far, you will lose a very useful concept called Annotative Objects. They were not introduced to AutoCAD until 2008 (and I'm not sure if they made it into the 2008 API, or not until 2009)
Robert,
Yes -- if the client is tied to a specific older version then...not much you can do about that. ADN will get _you_ access to later versions without paying retail, though.
I don't know if VS2008/ACAD2006 is possible, and don't have that version available to check. I think that as long as you target the appropriate version .Net framework, you'll be fine.
And if you're tied to something earlier than Acad2009, you won't be worrying about 32-bit v. 64-bit at all, and don't need to take recent APIs into account. So I think you can probably base your decision on the client's requested features versus AutoCAD features, rather than worrying about API features.
-drg
*edit -- looks like chiefbraincloud beat me to most of that. I, too, skipped 2008 -- might be missing something there.