{"id":1598,"date":"2016-01-29T16:17:56","date_gmt":"2016-01-30T00:17:56","guid":{"rendered":"https:\/\/www.autodesk.com/blogs\/autocad\/?p=1598"},"modified":"2020-04-07T14:57:36","modified_gmt":"2020-04-07T21:57:36","slug":"bootstrap-autocad-deployments-customizations-4","status":"publish","type":"post","link":"https:\/\/www.autodesk.com/blogs\/autocad\/bootstrap-autocad-deployments-customizations-4\/","title":{"rendered":"Bootstrap AutoCAD Deployments for Customizations (4)"},"content":{"rendered":"<p>In <a href=\"https:\/\/www.autodesk.com/blogs\/autocad\/bootstrap-autocad-deployments-customizations-3\/\">Bootstrap AutoCAD Deployments for Customizations Part 3<\/a> I told you the bootstrap process adds only one file, <em>acad.lsp<\/em>, to the deployment. You won\u2019t ever edit it, and any files that may need to be edited will be located on the network and edited outside of the deployment. This will make the IT department happy.<\/p>\n<h2 id=\"a-brief-explanation-of-autolisp-file\">A brief explanation of AutoLISP file<\/h2>\n<p>AutoLISP\u00ae files are text-based files (<em>.lsp<\/em> instead of <em>.txt<\/em>). They can be edited in Notepad or your favorite text editor, but I recommend using the Visual LISP\u00ae editor built into AutoCAD\u00ae software and accessed with\u00a0the command VLIDE. One reason I like\u00a0the Visual LISP editor: It\u00a0color-codes the file syntax. See Figure 1.<\/p>\n<div id=\"attachment_1691\" style=\"width: 310px\" class=\"wp-caption alignnone\"><a href=\"https:\/\/res.cloudinary.com\/dnngwl1yi\/image\/upload\/v1572909078\/boostrap-autocad-deployment-4-fig1_q32pre.png\" rel=\"attachment wp-att-1691\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1691\" class=\"size-medium wp-image-1691\" src=\"https:\/\/www.autodesk.com/blogs\/autocad\/wp-content\/uploads\/sites\/35\/2020\/04\/boostrap-autocad-deployment-4-fig1_q32pre-300x113.png?cld_params=w_300\" alt=\"Color coding in the Visual LISP editor. Bootstrap AutoCAD Deployments for Customizations.\" width=\"300\" height=\"113\" srcset=\"https:\/\/www.autodesk.com/blogs\/autocad\/wp-content\/uploads\/sites\/35\/2020\/04\/boostrap-autocad-deployment-4-fig1_q32pre-300x113.png 300w, https:\/\/www.autodesk.com/blogs\/autocad\/wp-content\/uploads\/sites\/35\/2020\/04\/boostrap-autocad-deployment-4-fig1_q32pre.png 520w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-1691\" class=\"wp-caption-text\">Figure 1: Color coding in the Visual LISP editor.<\/p><\/div>\n<p>The code\u00a0includes a lot of parentheses\u00a0(I&#8217;ve heard LISP referred to, affectionately, as standing for\u00a0Lost In Stupid Parentheses) plus AutoLISP functions\u00a0(those odd bits of text that aren&#8217;t normal words) and\u00a0normal words. (I&#8217;ve written\u00a0so much AutoLISP code that I overuse parentheses in my normal writing, much to the despair of my editors.)<\/p>\n<p>Never written AutoLISP code? Don&#8217;t worry. I will explain everything clearly and you can always reach out to me if you have issues.<\/p>\n<h2 id=\"the-only-acad-lsp-file-you-need-for-bootstrapping-autocad\">The only acad.lsp file you need for bootstrapping AutoCAD<\/h2>\n<p>I advocate placing customizations on the network when possible. The locally deployed <em>acad.lsp file<\/em> placed in %ProgramFiles%AutodeskAutoCAD 2016Support should do no more than locate another <em>.lsp<\/em> file on the network and execute it.<\/p>\n<p>This, in essence, is bootstrapping: Our <em>acad.lsp file<\/em> will be deployed with AutoCAD\u2014but its sole purpose is to find, and execute, another <em>.lsp<\/em> file, <em>bootstrap.lsp<\/em>, that is located on the network.<\/p>\n<p>Trusted locations, recently introduced to AutoCAD, complicate things a bit. The <em>acad.lsp<\/em> file not only has to load the required code; it also\u00a0adds the code&#8217;s location to trusted locations.<\/p>\n<p>All this is easily accomplished and does not violate the AutoCAD security model because it takes place in a trusted location.<\/p>\n<p>Ready? OK, deep breath. Below is the code for the <em>acad.lsp<\/em> file. Simply copy it into your text editor and save it as &#8220;acad.lsp&#8221; to your My Documents folder for now.<\/p>\n<p><code>(princ \"nLoading bootstrap version of acad.lsp... \")<br \/>\n(setq myFile \"p:autocad_2016bootstrap.lsp\")<br \/>\n(cond ((findfile myFile)<br \/>\n(setq oldPaths (getvar \"TrustedPaths\"))<br \/>\n(setq newPaths (strcat (vl-string-right-trim \";\" oldPaths)<br \/>\n(cond ((&gt; (strlen oldPaths) 0) \";\") (\"\"))<br \/>\n(vl-filename-directory myFile)<br \/>\n\"\"))<br \/>\n(setvar \"TrustedPaths\" newPaths)<br \/>\n(load myFile)))<br \/>\n(princ \"done.\")<br \/>\n(princ)<br \/>\n<\/code><br \/>\nThat wasn&#8217;t so scary, was it?<\/p>\n<p>Note: If you are using Notepad, enclose the filename in double quotes so Notepad does not add the <em>.txt<\/em> extension. However, if you are using the Visual LISP editor, <em>.lsp<\/em> is automatically used. See Figure 2.<\/p>\n<div id=\"attachment_1694\" style=\"width: 310px\" class=\"wp-caption alignnone\"><a href=\"https:\/\/res.cloudinary.com\/dnngwl1yi\/image\/upload\/v1572909078\/boostrap-autocad-deployment-4-fig2_wwb4ur.png\" rel=\"attachment wp-att-1694\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1694\" class=\"size-medium wp-image-1694\" src=\"https:\/\/www.autodesk.com/blogs\/autocad\/wp-content\/uploads\/sites\/35\/2020\/04\/boostrap-autocad-deployment-4-fig2_wwb4ur-300x207.png\" alt=\"Saving a .lsp file in Notepad. Bootstrap AutoCAD Deployments for Customizations.\" width=\"300\" height=\"207\" srcset=\"https:\/\/www.autodesk.com/blogs\/autocad\/wp-content\/uploads\/sites\/35\/2020\/04\/boostrap-autocad-deployment-4-fig2_wwb4ur-300x207.png 300w, https:\/\/www.autodesk.com/blogs\/autocad\/wp-content\/uploads\/sites\/35\/2020\/04\/boostrap-autocad-deployment-4-fig2_wwb4ur.png 655w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-1694\" class=\"wp-caption-text\">Figure 2: Saving a .lsp file in Notepad.<\/p><\/div>\n<p>Note: AutoLISP usually\u00a0doesn&#8217;t care whether text is lower case or in caps\u00a0<em>except<\/em> when you display something at the AutoCAD command prompt. I use capitalizations to help make the code clearer.<\/p>\n<p>OK, now let&#8217;s talk through each line in detail.<\/p>\n<h2 id=\"a-detailed-look-at-the-acad-lsp-code-for-bootstrapping-autocad\">A detailed look at the acad.lsp code for bootstrapping AutoCAD<\/h2>\n<p><code>(princ \"nLoading bootstrap version of acad.lsp... \")<\/code><br \/>\nThis line prints &#8220;Loading bootstrap version of acad.lsp&#8230; &#8221; to the AutoCAD command prompt. I intentionally added a blank space to the end of the text so that the cursor does not blink right after the ellipsis. This is how most AutoCAD commands do their prompts. The &#8220;n&#8221; places the text on a new line on the AutoCAD command prompt.<\/p>\n<p>Note: In\u00a0one of the few AutoLISP cases where capitalization matters, the\u00a0&#8220;n&#8221;\u00a0<em>must<\/em>\u00a0be lower case.<\/p>\n<p><code>(setq myFile \"p:autocad_2016bootstrap.lsp\")<\/code><br \/>\nThis line sets the location and filename for the bootstrap code\u2014the one that will be available outside of the deployment created by the IT department.<\/p>\n<p>Note:<em> This is the only line of code in this file that you need to edit for your own use!<\/em><\/p>\n<p>I named the bootstrap code\u00a0file bootstrap.lsp and I suggest you do the same. In\u00a0the above example, the network location for the file is p:autocad_2016. Your actual location will vary.<\/p>\n<p>&#8220;Wait a minute!&#8221; you may be saying. &#8220;The network location is p:autocad_2016 but there are <em>two<\/em> backslashes in the code.&#8221; Is that a mistake? No.<\/p>\n<p>For every normal backslash in your path, the AutoLISP code requires <em>two<\/em> backslashes. This is because the backslash is a special character to AutoLISP code. For example, if the <em>bootstrap.lsp<\/em> file is located on\u00a0your network at m:autocadprograms, then the\u00a0code\u00a0needs to use\u00a0&#8220;m:autocadprogramsbootstrap.lsp&#8221; in the double quotes. Paths can have spaces, so &#8220;s:autocad 2016codebootstrap.lsp&#8221; is valid, too.<\/p>\n<p><code>(cond ((findfile myFile)<\/code><br \/>\nThis line checks to see if the <em>bootstrap.lsp<\/em> file can be found in the location you provided. If not, no problem: AutoCAD will not attempt to alter the environment. This is part of the beauty of bootstrapping. If a special AutoCAD environment cannot be supported because the bootstrap code is missing, out-of-the-box AutoCAD continues to load without issue or errors.<\/p>\n<p>Note: The opening parentheses in\u00a0(cond\u00a0((findfile myFile)\u00a0won&#8217;t have their matching closing parentheses until later in the code.<\/p>\n<p><code>(setq oldPaths (getvar \"TrustedPaths\"))<\/code><br \/>\nThis gets the original setting for the AutoCAD system variable TrustedPaths and saves it to a variable called &#8220;oldPaths.&#8221;<\/p>\n<p><code>(setq newPaths (strcat (vl-string-right-trim \";\" oldPaths)<br \/>\n(cond ((&gt; (strlen oldPaths) 0) \";\") (\"\"))<br \/>\n(vl-filename-directory myFile)<br \/>\n\"\"))<\/code><br \/>\nThese four lines work together to add the <em>bootstrap.lsp<\/em> file path to the end of any current trusted locations. The first line strips out any semicolons (;) at the end of the old paths. The second line checks to see if there are any old paths, and, if there are, puts a semicolon on the end. The third line adds the path to the <em>bootstrap.lsp<\/em> file. The last line adds a trailing backslash to the end of our new path because that&#8217;s how AutoCAD stores them.<\/p>\n<p>You may be asking, &#8220;Why strip out any trailing semicolons in the first line and then just add one back in the second line?&#8221; Answer: To avoid multiple semicolons at the end of the old paths before adding our new path. Does it harm anything to have multiple semicolons? Not at this time. But it is sloppy to let semicolons proliferate.<\/p>\n<p><code>(setvar \"TrustedPaths\" newPaths)<\/code><br \/>\nThis sets the AutoCAD system variable to the new paths, which we set based on the old paths plus our new path.<\/p>\n<p><code>(load myFile)))<\/code><br \/>\nThis line loads the found\u00a0<em>bootstrap.lsp<\/em> file we specified at the beginning of the code. (Again, if the file cannot be found, this loading attempt will never occur, so there will be no error for the user to see.) The two closing parentheses\u00a0(load myFile)))\u00a0complete the opening parentheses earlier in the code.<\/p>\n<p><code>(princ \"done.\")<\/code><br \/>\nThis line will print &#8220;done.&#8221; at the AutoCAD command prompt, whether the <em>bootstrap.lsp<\/em> file is found or not. Also note there is no new-line character &#8220;n&#8221; at the beginning. This is intentional, so the &#8220;done.&#8221; prompt goes at the end of the &#8220;Loading bootstrap version of acad.lsp&#8230; &#8221; prompt. Here\u2019s what you\u2019ll see:<\/p>\n<p>Command: Loading bootstrap version of acad.lsp&#8230; done.<\/p>\n<p><code>(princ)<\/code><br \/>\nThis provides a &#8220;clean exit&#8221; to the code at the AutoCAD prompt.<\/p>\n<h2 id=\"bootstrapped-autocad-deployments-are-easy-no\">Bootstrapped AutoCAD deployments are easy\u2014no?<\/h2>\n<p>Even though the <em>acad.lsp<\/em> file contains 12 lines of code, there is only one line you need to edit on your own. That&#8217;s not so bad, is it? Just remember to use two backslashes for every single backslash in the path you provide.<\/p>\n<h2 id=\"stay-tuned-bootstrap-autocad-deployments-for-customizations-part-5\">Stay tuned! <a href=\"https:\/\/www.autodesk.com/blogs\/autocad\/bootstrap-autocad-deployments-customizations-5\/\">Bootstrap AutoCAD Deployments for Customizations Part 5<\/a><\/h2>\n<p>My next post (<a href=\"https:\/\/www.autodesk.com/blogs\/autocad\/bootstrap-autocad-deployments-customizations-5\/\">Bootstrap AutoCAD Deployments for Customizations Part 5<\/a>) looks at how we use the <em>bootstrap.lsp<\/em> file to add needed profiles to the user&#8217;s AutoCAD environment.<\/p>\n<p>Here&#8217;re all the previous installments:<\/p>\n<p><a href=\"https:\/\/www.autodesk.com/blogs\/autocad\/bootstrap-autocad-deployments-part-1\/\">Bootstrap AutoCAD Deployments for Customizations Part 1<\/a><\/p>\n<p><a href=\"https:\/\/www.autodesk.com/blogs\/autocad\/bootstrap-autocad-deployments-customizations-part-2\/\">Bootstrap AutoCAD Deployments for Customizations Part 2<\/a><\/p>\n<p><a href=\"https:\/\/www.autodesk.com/blogs\/autocad\/bootstrap-autocad-deployments-customizations-3\/\">Bootstrap AutoCAD Deployments for Customizations Part 3<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>In Bootstrap AutoCAD Deployments for Customizations Part 3 I told you the bootstrap process adds only one file, acad.lsp, to the deployment. You won\u2019t ever edit it, and any files that may need to be edited will be located on the network and edited outside of the deployment. This will make the IT department happy. [&hellip;]<\/p>\n","protected":false},"author":110,"featured_media":1694,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[380,893],"tags":[11,248,386,383,389],"class_list":["post-1598","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cad-management","category-learning","tag-autocad","tag-autocad-2016","tag-autolisp","tag-customizations","tag-deployment","dhig-theme--light"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.3 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Bootstrap AutoCAD Deployments for Customizations Part 4<\/title>\n<meta name=\"description\" content=\"Bootstrapping: Your acad.lsp file is deployed with AutoCAD\u2014but all it does is find and execute another .lsp file, bootstrap.lsp, located on the network.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.autodesk.com/blogs\/autocad\/bootstrap-autocad-deployments-customizations-4\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Bootstrap AutoCAD Deployments for Customizations (4)\" \/>\n<meta property=\"og:description\" content=\"Bootstrapping: Your acad.lsp file is deployed with AutoCAD\u2014but all it does is find and execute another .lsp file, bootstrap.lsp, located on the network.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.autodesk.com/blogs\/autocad\/bootstrap-autocad-deployments-customizations-4\/\" \/>\n<meta property=\"og:site_name\" content=\"AutoCAD Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/autocad\" \/>\n<meta property=\"article:published_time\" content=\"2016-01-30T00:17:56+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-04-07T21:57:36+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/i0.wp.com\/blogs.autodesk.com\/autocad\/wp-content\/uploads\/sites\/35\/2020\/04\/boostrap-autocad-deployment-4-fig2_wwb4ur.png?fit=655%2C452&ssl=1\" \/>\n\t<meta property=\"og:image:width\" content=\"655\" \/>\n\t<meta property=\"og:image:height\" content=\"452\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"R. Robert Bell\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@r_robert_bell\" \/>\n<meta name=\"twitter:site\" content=\"@autocad\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"R. Robert Bell\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/bootstrap-autocad-deployments-customizations-4\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/bootstrap-autocad-deployments-customizations-4\\\/\"},\"author\":{\"name\":\"R. Robert Bell\",\"@id\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/#\\\/schema\\\/person\\\/de0e415560e8c287b57dd65d59168dc8\"},\"headline\":\"Bootstrap AutoCAD Deployments for Customizations (4)\",\"datePublished\":\"2016-01-30T00:17:56+00:00\",\"dateModified\":\"2020-04-07T21:57:36+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/bootstrap-autocad-deployments-customizations-4\\\/\"},\"wordCount\":1251,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/bootstrap-autocad-deployments-customizations-4\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/wp-content\\\/uploads\\\/sites\\\/35\\\/2020\\\/04\\\/boostrap-autocad-deployment-4-fig2_wwb4ur.png\",\"keywords\":[\"AutoCAD\",\"AutoCAD 2016\",\"AutoLISP\",\"Customizations\",\"Deployment\"],\"articleSection\":[\"CAD Management\",\"Learning\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/bootstrap-autocad-deployments-customizations-4\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/bootstrap-autocad-deployments-customizations-4\\\/\",\"url\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/bootstrap-autocad-deployments-customizations-4\\\/\",\"name\":\"Bootstrap AutoCAD Deployments for Customizations Part 4\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/bootstrap-autocad-deployments-customizations-4\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/bootstrap-autocad-deployments-customizations-4\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/wp-content\\\/uploads\\\/sites\\\/35\\\/2020\\\/04\\\/boostrap-autocad-deployment-4-fig2_wwb4ur.png\",\"datePublished\":\"2016-01-30T00:17:56+00:00\",\"dateModified\":\"2020-04-07T21:57:36+00:00\",\"description\":\"Bootstrapping: Your acad.lsp file is deployed with AutoCAD\u2014but all it does is find and execute another .lsp file, bootstrap.lsp, located on the network.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/bootstrap-autocad-deployments-customizations-4\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/bootstrap-autocad-deployments-customizations-4\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/bootstrap-autocad-deployments-customizations-4\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/wp-content\\\/uploads\\\/sites\\\/35\\\/2020\\\/04\\\/boostrap-autocad-deployment-4-fig2_wwb4ur.png\",\"contentUrl\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/wp-content\\\/uploads\\\/sites\\\/35\\\/2020\\\/04\\\/boostrap-autocad-deployment-4-fig2_wwb4ur.png\",\"width\":655,\"height\":452,\"caption\":\"Saving a .lsp file in Notepad. Bootstrap AutoCAD Deployments for Customizations.\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/bootstrap-autocad-deployments-customizations-4\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u30db\u30fc\u30e0\",\"item\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"CAD Management\",\"item\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/cad-management\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Bootstrap AutoCAD Deployments for Customizations (4)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/#website\",\"url\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/\",\"name\":\"AutoCAD Blog\",\"description\":\"Your home for all things AutoCAD\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/#organization\",\"name\":\"Autodesk, Inc.\",\"url\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/wp-content\\\/uploads\\\/sites\\\/35\\\/2022\\\/06\\\/16\\\/autodesk-autocad-small_social-400.png\",\"contentUrl\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/wp-content\\\/uploads\\\/sites\\\/35\\\/2022\\\/06\\\/16\\\/autodesk-autocad-small_social-400.png\",\"width\":400,\"height\":400,\"caption\":\"Autodesk, Inc.\"},\"image\":{\"@id\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/autocad\",\"https:\\\/\\\/x.com\\\/autocad\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/#\\\/schema\\\/person\\\/de0e415560e8c287b57dd65d59168dc8\",\"name\":\"R. Robert Bell\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/faededf39b794760f272dc1b7533e431fc61bebbd2f1109ba397c62f066651df?s=96&d=blank&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/faededf39b794760f272dc1b7533e431fc61bebbd2f1109ba397c62f066651df?s=96&d=blank&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/faededf39b794760f272dc1b7533e431fc61bebbd2f1109ba397c62f066651df?s=96&d=blank&r=g\",\"caption\":\"R. Robert Bell\"},\"description\":\"A longtime AUGI director\u2014and the organization\u2019s current President\u2014Robert has been active in the MEP industry for over 25 years and an AutoCAD user since version 2.18. He provides strategic direction, technical oversight, and high-level support for Stantec. Follow him on Twitter @r_robert_bell.\",\"sameAs\":[\"https:\\\/\\\/x.com\\\/r_robert_bell\",\"robertbell\"],\"url\":\"https:\\\/\\\/www.autodesk.com/blogs\\\/autocad\\\/author\\\/robertbell\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Bootstrap AutoCAD Deployments for Customizations Part 4","description":"Bootstrapping: Your acad.lsp file is deployed with AutoCAD\u2014but all it does is find and execute another .lsp file, bootstrap.lsp, located on the network.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.autodesk.com/blogs\/autocad\/bootstrap-autocad-deployments-customizations-4\/","og_locale":"en_US","og_type":"article","og_title":"Bootstrap AutoCAD Deployments for Customizations (4)","og_description":"Bootstrapping: Your acad.lsp file is deployed with AutoCAD\u2014but all it does is find and execute another .lsp file, bootstrap.lsp, located on the network.","og_url":"https:\/\/www.autodesk.com/blogs\/autocad\/bootstrap-autocad-deployments-customizations-4\/","og_site_name":"AutoCAD Blog","article_publisher":"https:\/\/www.facebook.com\/autocad","article_published_time":"2016-01-30T00:17:56+00:00","article_modified_time":"2020-04-07T21:57:36+00:00","og_image":[{"width":655,"height":452,"url":"https:\/\/i0.wp.com\/blogs.autodesk.com\/autocad\/wp-content\/uploads\/sites\/35\/2020\/04\/boostrap-autocad-deployment-4-fig2_wwb4ur.png?fit=655%2C452&ssl=1","type":"image\/png"}],"author":"R. Robert Bell","twitter_card":"summary_large_image","twitter_creator":"@r_robert_bell","twitter_site":"@autocad","twitter_misc":{"Written by":"R. Robert Bell","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.autodesk.com/blogs\/autocad\/bootstrap-autocad-deployments-customizations-4\/#article","isPartOf":{"@id":"https:\/\/www.autodesk.com/blogs\/autocad\/bootstrap-autocad-deployments-customizations-4\/"},"author":{"name":"R. Robert Bell","@id":"https:\/\/www.autodesk.com/blogs\/autocad\/#\/schema\/person\/de0e415560e8c287b57dd65d59168dc8"},"headline":"Bootstrap AutoCAD Deployments for Customizations (4)","datePublished":"2016-01-30T00:17:56+00:00","dateModified":"2020-04-07T21:57:36+00:00","mainEntityOfPage":{"@id":"https:\/\/www.autodesk.com/blogs\/autocad\/bootstrap-autocad-deployments-customizations-4\/"},"wordCount":1251,"commentCount":0,"publisher":{"@id":"https:\/\/www.autodesk.com/blogs\/autocad\/#organization"},"image":{"@id":"https:\/\/www.autodesk.com/blogs\/autocad\/bootstrap-autocad-deployments-customizations-4\/#primaryimage"},"thumbnailUrl":"https:\/\/www.autodesk.com/blogs\/autocad\/wp-content\/uploads\/sites\/35\/2020\/04\/boostrap-autocad-deployment-4-fig2_wwb4ur.png","keywords":["AutoCAD","AutoCAD 2016","AutoLISP","Customizations","Deployment"],"articleSection":["CAD Management","Learning"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.autodesk.com/blogs\/autocad\/bootstrap-autocad-deployments-customizations-4\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.autodesk.com/blogs\/autocad\/bootstrap-autocad-deployments-customizations-4\/","url":"https:\/\/www.autodesk.com/blogs\/autocad\/bootstrap-autocad-deployments-customizations-4\/","name":"Bootstrap AutoCAD Deployments for Customizations Part 4","isPartOf":{"@id":"https:\/\/www.autodesk.com/blogs\/autocad\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.autodesk.com/blogs\/autocad\/bootstrap-autocad-deployments-customizations-4\/#primaryimage"},"image":{"@id":"https:\/\/www.autodesk.com/blogs\/autocad\/bootstrap-autocad-deployments-customizations-4\/#primaryimage"},"thumbnailUrl":"https:\/\/www.autodesk.com/blogs\/autocad\/wp-content\/uploads\/sites\/35\/2020\/04\/boostrap-autocad-deployment-4-fig2_wwb4ur.png","datePublished":"2016-01-30T00:17:56+00:00","dateModified":"2020-04-07T21:57:36+00:00","description":"Bootstrapping: Your acad.lsp file is deployed with AutoCAD\u2014but all it does is find and execute another .lsp file, bootstrap.lsp, located on the network.","breadcrumb":{"@id":"https:\/\/www.autodesk.com/blogs\/autocad\/bootstrap-autocad-deployments-customizations-4\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.autodesk.com/blogs\/autocad\/bootstrap-autocad-deployments-customizations-4\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.autodesk.com/blogs\/autocad\/bootstrap-autocad-deployments-customizations-4\/#primaryimage","url":"https:\/\/www.autodesk.com/blogs\/autocad\/wp-content\/uploads\/sites\/35\/2020\/04\/boostrap-autocad-deployment-4-fig2_wwb4ur.png","contentUrl":"https:\/\/www.autodesk.com/blogs\/autocad\/wp-content\/uploads\/sites\/35\/2020\/04\/boostrap-autocad-deployment-4-fig2_wwb4ur.png","width":655,"height":452,"caption":"Saving a .lsp file in Notepad. Bootstrap AutoCAD Deployments for Customizations."},{"@type":"BreadcrumbList","@id":"https:\/\/www.autodesk.com/blogs\/autocad\/bootstrap-autocad-deployments-customizations-4\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u30db\u30fc\u30e0","item":"https:\/\/www.autodesk.com/blogs\/autocad\/"},{"@type":"ListItem","position":2,"name":"CAD Management","item":"https:\/\/www.autodesk.com/blogs\/autocad\/cad-management\/"},{"@type":"ListItem","position":3,"name":"Bootstrap AutoCAD Deployments for Customizations (4)"}]},{"@type":"WebSite","@id":"https:\/\/www.autodesk.com/blogs\/autocad\/#website","url":"https:\/\/www.autodesk.com/blogs\/autocad\/","name":"AutoCAD Blog","description":"Your home for all things AutoCAD","publisher":{"@id":"https:\/\/www.autodesk.com/blogs\/autocad\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.autodesk.com/blogs\/autocad\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.autodesk.com/blogs\/autocad\/#organization","name":"Autodesk, Inc.","url":"https:\/\/www.autodesk.com/blogs\/autocad\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.autodesk.com/blogs\/autocad\/#\/schema\/logo\/image\/","url":"https:\/\/www.autodesk.com/blogs\/autocad\/wp-content\/uploads\/sites\/35\/2022\/06\/16\/autodesk-autocad-small_social-400.png","contentUrl":"https:\/\/www.autodesk.com/blogs\/autocad\/wp-content\/uploads\/sites\/35\/2022\/06\/16\/autodesk-autocad-small_social-400.png","width":400,"height":400,"caption":"Autodesk, Inc."},"image":{"@id":"https:\/\/www.autodesk.com/blogs\/autocad\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/autocad","https:\/\/x.com\/autocad"]},{"@type":"Person","@id":"https:\/\/www.autodesk.com/blogs\/autocad\/#\/schema\/person\/de0e415560e8c287b57dd65d59168dc8","name":"R. Robert Bell","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/faededf39b794760f272dc1b7533e431fc61bebbd2f1109ba397c62f066651df?s=96&d=blank&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/faededf39b794760f272dc1b7533e431fc61bebbd2f1109ba397c62f066651df?s=96&d=blank&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/faededf39b794760f272dc1b7533e431fc61bebbd2f1109ba397c62f066651df?s=96&d=blank&r=g","caption":"R. Robert Bell"},"description":"A longtime AUGI director\u2014and the organization\u2019s current President\u2014Robert has been active in the MEP industry for over 25 years and an AutoCAD user since version 2.18. He provides strategic direction, technical oversight, and high-level support for Stantec. Follow him on Twitter @r_robert_bell.","sameAs":["https:\/\/x.com\/r_robert_bell","robertbell"],"url":"https:\/\/www.autodesk.com/blogs\/autocad\/author\/robertbell\/"}]}},"_links":{"self":[{"href":"https:\/\/www.autodesk.com/blogs\/autocad\/wp-json\/wp\/v2\/posts\/1598","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.autodesk.com/blogs\/autocad\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.autodesk.com/blogs\/autocad\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.autodesk.com/blogs\/autocad\/wp-json\/wp\/v2\/users\/110"}],"replies":[{"embeddable":true,"href":"https:\/\/www.autodesk.com/blogs\/autocad\/wp-json\/wp\/v2\/comments?post=1598"}],"version-history":[{"count":0,"href":"https:\/\/www.autodesk.com/blogs\/autocad\/wp-json\/wp\/v2\/posts\/1598\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.autodesk.com/blogs\/autocad\/wp-json\/wp\/v2\/media\/1694"}],"wp:attachment":[{"href":"https:\/\/www.autodesk.com/blogs\/autocad\/wp-json\/wp\/v2\/media?parent=1598"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.autodesk.com/blogs\/autocad\/wp-json\/wp\/v2\/categories?post=1598"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.autodesk.com/blogs\/autocad\/wp-json\/wp\/v2\/tags?post=1598"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}