2013

Table Of Contents
For example, if an error occurs while AutoCAD loads the mydocapp1.lsp file,
the princ function displays the following message and AutoCAD continues
to load the two remaining files:
MYDOCAPP1.LSP file not loaded.
If you use the command function in an acad.lsp or acaddoc.lsp, it should be
called only from within a defun statement. Use the S::STARTUP function to
define commands that need to be issued immediately when you begin a
drawing session.
See also:
S::STARTUP Function: Postinitialization Execution (page 86)
S::STARTUP Function: Postinitialization Execution
You can define an S::STARTUP function to perform any needed setup
operations after the drawing is initialized.
The startup LISP files (acad.lsp, acaddoc.lsp, and MNL) are all loaded into
memory before the drawing is completely initialized. Typically, this does not
pose a problem, unless you want to use the command function, which is not
guaranteed to work until after a drawing is initialized.
If the user-defined function S::STARTUP is included in an acad.lsp, acaddoc.lsp,
or MNL file, it is called when you enter a new drawing or open an existing
drawing. Thus, you can include a definition of S::STARTUP in the AutoLISP
startup file to perform any setup operations.
For example, if you want to override the standard HATCH command by adding
a message and then switching to the BHATCH command, use an acaddoc.lsp
file that contains the following:
(defun C:HATCH ( )
(alert "Using the BHATCH command!")
(princ "\nEnter OLDHATCH to get to real HATCH command.\n")
(command "BHATCH")
(princ)
)
(defun C:OLDHATCH ( )
(command ".HATCH")
(princ)
86 | Chapter 7 Introduction to Programming Interfaces