Friday, August 20, 2010

A Streamlined Access Point For Custom Content

One of the key concepts to understand when customizing AutoCAD (especially in a network environment) is that any CUI that is loaded into AutoCAD (either the Main CUI or the Enterprise CUI) will automatically load a menu lisp file (.mnl) that is in the same folder and shares the same name as the CUI file.

This is an excellent access point to provide custom content for your AutoCAD user profile. For example, if you create an AutoCAD user profile (.arg file) and path the EnterpriseMenuFile to a custom CUI then you can also create a .mnl file with the same name and in the same network directory.

In the .arg file the CUI paths are defined as follows:

"EnterpriseMenuFile"="x:\\sld\\support\\sld"
"MenuFile"="%RoamableRootFolder%\\support\\acad"

This profile will automatically look for a .mnl file with the same name and in the same directory as the CUI: 


Inside the .mnl file you can add in pretty much any custom content that you want. The below code will netload a dll file created in C#.net and will also load a lisp file.


;Title: SLD.mnl
;Description: Automatically loads when SLD.cui is loaded.

;Constants
(setq SLD_DRIVE "X:\\")
(setq SLD_PATH (strcat SLD_DRIVE "SLD\\Support\\"))
(setq SLD_TOOLS (strcat SLD_PATH "SLDTools.dll"))

;Load custom routines
(command "NETLOAD" SLD_TOOLS) ;netload sld functions
(load (strcat SLD_PATH "sld.lsp")) ;load lisp files

(princ "\nStreamlined content loaded!\n")



With this access point the amount of customization you can add is virtually endless. The nice thing is if you develop a new function and load it into this .mnl file it is instantly available to all of your users...that's streamlined.

No comments:

Post a Comment