 |
API Development KitVersion: 10 |
Structure of an Add-On
Practically an add-on is a DLL on Windows, or a Mach-O bundle on the
Macintosh. When you launch ArchiCAD, it looks for the available
add-ons in this order:
- It looks for the Add-Ons folder in its own home
directory (that is, where you have installed it)
- The designated add-ons folder can be changed in the Add-On Manager dialog
of ArchiCAD (Options menu / Add-On Manager...). This path is stored into the
system registry under the 'HKEY_CURRENT_USER\Software\Graphisoft\ArchiCAD
10.0.0 xxx\Add-On Manager' key on Windows. On Macintosh, you don't have
direct access to this information. Next time when you launch the application,
the Add-On Manager will enumerate the add-ons from this location.
Note that until you change the Designated Add-Ons folder from
the Add-On Manager dialog, the 'Default Location' key is set to
%DEFAULT%, which means the Add-Ons folder
right next to the application. The 'Actual Path' registry entry shows
the actual folder where the add-ons are loaded from.
- You can edit the list of loaded add-ons even individually in the
Add-On Manager dialog. The full paths of the added, disabled and skipped
add-ons are stored in the registry also.
If ArchiCAD finds an Add-Ons folder somewhere, it gathers all the
appropriate files from it and from its subfolders. Subfolders on any
level are skipped when the name of it begins with the a parentheses
'(' character. Add-ons can also be loaded individually in the
Add-On Manager (Options/Add-On Manager) in ArchiCAD, which also facilitates
enabling and disabling of loaded add-ons. Please note that certain add-ons
cannot be unloaded runtime; you'll have to restart ArchiCAD to disable those.
Every file must pass several tests to be considered as a valid
ArchiCAD add-on. If the any of the following requirements are not
fulfilled the add-on commands will be not mounted into the
ArchiCAD.
Required Resources
In order to be able to build an add-on you must fulfill some
requirements in the source files too. Also there are requirements how
to set up compilation options and linking parameters.
Required
Functions
Compilation
and Linking Issues
|