You seem to be making the mistake of confusing
major releases, and service packs.
Please consider using a little common sense, to
understand why 'backward/forward compatibility'
in the context used in the document you posted
a link to, as well as most other contexts, applies
to major releases, BUT NOT service packs.
--
http://www.caddzone.com
AcadXTabs: MDI Document Tabs for AutoCAD 2004/2005/2006
http://www.acadxtabs.com
wrote in message news:5080629@discussion.autodesk.com...
Tony,
I am saying that most code IS forward compatible. Like I said, I WOULD expect code I written for AutoCAD Pre SP1 to work Post SP1 and possibly beyond (although there are many documented cases in MS Windows where this is not always the case.)
Even AutoCAD acknowledges that backwards compatibility may not work, which is why it (backwards compatibility) is not supported.
See "API and Script Compatibility" here:
http://usa.autodesk.com/adsk/servlet/item?siteID=123112&id=2935303
As far as LISP is concerned, I admit that I have no experience with versioning of it, but I expect that if AutoCAD 2005 LISP defines a function that AutoCAD 2004 LISP doesn't define, my LISP code will not work with AutoCAD 2004.
As far as VBA is concerned, If I program for a newer interface for say IAcadUtility2, which doesn't exist in Acad2004, this code will not even run, erroring out with an unknown type. And have those of you with both 2005 and 2006 installed ever noticed that the newer (2006) type libraries are always used in VBA?
Unfortunately, I can not comment on ARX, that is not my area of expertise. But if I expect a function exported from any exe or dll to exist and it doesn't, this will stop a program from running.
MS COM in general has had many problems with this very scenario (google DLLHELL). A program installs an older dll to the system, which may break a program expecting a newer version of said dll (could even prevent the system from running altogether, BSOD in the worst cases).
.NET is supposed to prevent many of these problems, but AutoCAD is dependant on specific versions of DLLs to run properly, most of which are written in ARX which have their own dependancies.
As an example of where NOT installing a required service pack breaks functionality, see the beginning of this thread.
If Laurence does install SP1 for AutoCAD 2005 on the Client, his code should then run. I am sure he will let us know if this is not the case.
C