Visual LISP, AutoLISP and General Customization

Visual LISP, AutoLISP and General Customization

Reply
Active Contributor
mc-lemons
Posts: 30
Registered: ‎11-28-2011
Message 1 of 8 (1,720 Views)

Deployment of Registry-Saved System Variables - AutoCAD 2013

1720 Views, 7 Replies
06-10-2013 01:49 PM

Hello all,

 

I am not sure if this is the right group to post in for this topic, but I couldn’t find any that seemed to fit, so I thought this one would be the most applicable. I apologize if I chose poorly.

 

My company is in the process of upgrading to AutoCAD 2013 (yes, I know 2014 is out, but IT won’t let us get the most recent because of fear of “new release bugs”). My company is small and our CAD Standards/Management is less than desirable. Over the past few years I have become the unofficial company CAD Manager and have slowly been getting us up to speed with using the latest capabilities and following best practices. So, I am becoming a fairly advanced user, but am by no means an expert, so please bear with me!

 

An issue that I deal with constantly is a new user not having the correct registry-saved system variables set up. This also happens a lot because our IT guy frequently reinstalls AutoCAD to fix issues. Every time AutoCAD is installed/reinstalled, all the registry-saved system variables are set to their default values. We have several that need to be set a certain way to match our current drafting standards (a few examples: .bak files turned off, plot.log files turned off, advanced attribute editor turned on, plot area relative to edge of paper, etc, etc.). Typically, I will get complaints from users about something not working correctly, and then I will troubleshoot the issue and eventually find out that they just had their AutoCAD reinstalled and their system variables are not set how they should be. Then I will get out my list and have them set all the variable s properly via the AutoCAD command line. What a pain!

 

 I have read up on creating AutoCAD Deployments (and we will be using these Deployments for this upgrade), but there does not seem to be a way to set variables when creating the Deployment. I would have thought that someone (or Autodesk) would have found a robust, quick way to do this by now. However, I cannot find this anywhere on the internet (so I’m starting to have my doubts). I’m hoping the guru’s on here have something up their sleeves!

 

Finally, to complicate things a little more, most of our users actually use AutoCAD LT (so no Lisp), and only a select few (like me) have full AutoCAD. So, we will be creating two separate Deployment files as it stands (which is not a big deal).

 

Some of my preferred criteria for the solution:

-Solution can be used for both AutoCAD & AutoCAD LT (I’m okay with there being two separate system variable “deployment” files since we will already have two different AutoCAD Deployments. I would just like the procedure for deploying both packages to be the same regardless of whether it’s for LT or full version).

- Solution would be able to be applied to each workstation without opening AutoCAD on each machine (and ideally, it would all happen when the AutoCAD Deployment installer was run!)

 

Does anyone have any recommendations? Is there any current best practices for accomplishing this? (maybe by changing the registry through batch files, VBscript files, etc? Or using AutoCAD script files – however, this requires the program to be open to run, which I was trying to avoid).

 

I appreciate any input. Thanks for looking!

*Expert Elite*
dgorsman
Posts: 5,596
Registered: ‎10-12-2006
Message 2 of 8 (1,715 Views)

Re: Deployment of Registry-Saved System Variables - AutoCAD 2013

06-10-2013 02:28 PM in reply to: mc-lemons

After a fresh install, you need to run AutoCAD anyways to get the secondary installer to run.  So initial system variable set-up from deployment creation doesn't seem that practical.  If you try to merge in registry settings without getting that secondary installer to run first the computer can get a little cranky (e.g. that secondary installer dialog can pop up when starting another program).

 

I have a standard new-user start-up BAT which calls AutoCAD with the OOTB profile, which causes the secondary installer to run.  After that, a handful of REG files are merged for the initial settings.  I don't do an all-in-one approach so its easier to set up while getting interupted every 15 minutes, as well as they can be selectively applied later if a user does something bad.

----------------------------------
If you are going to fly by the seat of your pants, expect friction burns.
Adopt. Adapt. Overcome. Or be overcome.
A good question will be halfway to a good answer.


Active Contributor
mc-lemons
Posts: 30
Registered: ‎11-28-2011
Message 3 of 8 (1,704 Views)

Re: Deployment of Registry-Saved System Variables - AutoCAD 2013

06-10-2013 05:04 PM in reply to: dgorsman

Thanks for the reply dgorsman! I really appreciate it.

 

As you can see, there is still a lot I need to learn. I was not aware of the second install that AutoCAD executes on the initial launch after a fresh install. So I do see your point, however, I still think Autodesk could have came up with a more integrated solution to this by now or least provided some documentation on the steps to take. I feel like this is a common problem for many. But I digress......

 

Just to be clear on your exact setup, I have a few questions (once again, please bear with my deployment inexperience):

 

1. So is the purpose of the batch file only to start up AutoCAD? If so, why not just start it via shortcut or Start Menu?

 

2. I was informed that the Deployment can be run in the background. As for the second installer, I assume that AutoCAD must be open normally for that to take place (i.e. not in the background)?

 

3. What is your approach with the reg files? You said you use a "handful" of reg files. Is there a reason you do not just use one? Is it because each system variable requires its own reg file? Also, could you provide me with the registry path to where all the AutoCAD system variables are stored? (sorry I have never edited the AutoCAD registry directly and am not familiar with its structure).

 

Your solution seems realtively simple and effective. Thank you for sharing!

 

If anyone else has a different approach, I would be interersted in hearing from you as well. Its always nice to hear a couple different approaches at solving a problem.

 

Thanks again!

*Expert Elite*
dgorsman
Posts: 5,596
Registered: ‎10-12-2006
Message 4 of 8 (1,676 Views)

Re: Deployment of Registry-Saved System Variables - AutoCAD 2013

06-11-2013 07:51 AM in reply to: mc-lemons

The BAT file does a number of things along with setting up AutoCAD - it automates things to make them quicker and more consistent, and nothing is forgetten.  In the past, users have tried to use AutoCAD without it being set up first, then wonder where everything is, try to load it themselves, etc. and end up making a hash of things.  The link to the BAT file is the only CAD shortcut on the default desktop, so there is little risk of users trying to do it themselves.

 

Deployment is different than the secondary installer.  Silent deployment is the initial install, which can be pushed over SCCM or just launched by the user, and has all of the choices in the installation dialogs already made.  If you run AutoCAD after the deployment is run (installation), then the secondary installer runs (that "Configuring AutoCAD blahblahblah" dialog) to add in the default registry information under HKEY_CURRENT_USER\Software\AutoDesk.

 

I break my registry files down, but not down to the level of individual system variables.  Typically its one for basic AutoCAD settings, and one for each AutoCAD profile to run.  We have a number of third-party and in-house applications, each with their own profile.  Trying to manage all of that in a single REG file is asking for small problems to sneak up and smack your users upside the head.

 

Take a dip in the aforementioned registry key, dig down down into the values.  Most of them are reasonably named.  Export a few of them and look at the resulting text files.  This will give you a better idea of how the information is stored and can be manipulated.

----------------------------------
If you are going to fly by the seat of your pants, expect friction burns.
Adopt. Adapt. Overcome. Or be overcome.
A good question will be halfway to a good answer.


Mentor
richie.hodgson
Posts: 221
Registered: ‎11-05-2008
Message 5 of 8 (1,666 Views)

Re: Deployment of Registry-Saved System Variables - AutoCAD 2013

06-11-2013 06:29 PM in reply to: mc-lemons

I look after a number of AutoCAD and Civil3D users and have created a C:smileyvery-happy:rive folder structure and lisp routine to do what I think you need. Essentially I have created the following folders C:\CAD\Plotters, C:\CAD\Plot Styles, C;\CAD\Temp and C:\CAD\System Standards. There are more but you get the picture. Next I have created an upgrade lisp, see attached. I have this lisp and any other lisp in the C:\CAD\System Standards folder. I also have an acaddoc lisp there too, see also attached.

So for me if one of the users gets a new PC I copy my C\CAD folder onto his/her PC and drag and drop the upgrade lisp into the active drawing space and job done. If AutoCAD is upgraded, drag and drop upgrade lisp and job done. This way vanilla installs are possible, there are multiple copies of the C:\CAD folder to chose from if something untoward happens.

You may notice I have included some system variables in the acaddoc file so that if a crash occurs it will correct some of the classic variables that go pair shaped.

This method works well for me as I dont really like tinkering and re tinkering with Vanilla AutoCAD installs.

I have tried to make the upgrade lisp transparent so that you can inker with it as necessary.

Richie
Active Contributor
mc-lemons
Posts: 30
Registered: ‎11-28-2011
Message 6 of 8 (1,650 Views)

Re: Deployment of Registry-Saved System Variables - AutoCAD 2013

06-12-2013 09:37 AM in reply to: richie.hodgson

Thanks for sharing Richie! And also thank you for the example attachments.

 

dgorsman, would you be willing to share your setup BAT file and maybe 1 or more of your REG files so that I may take a look?

*Expert Elite*
dgorsman
Posts: 5,596
Registered: ‎10-12-2006
Message 7 of 8 (1,645 Views)

Re: Deployment of Registry-Saved System Variables - AutoCAD 2013

06-12-2013 10:01 AM in reply to: mc-lemons
@echo off


rem Start AutoCAD 2011 to start the secondary installer, adding user-specific settings

echo Starting AutoCAD 2011...

"C:\Program Files\Autodesk\AutoCAD 2011\acad.exe" /p "<<Unnamed Profile>>"


echo AutoCAD 2011 settings...

rem Push the profiles

regedit /s "\\fsrvdphsan2\ADMINDATA$\CADSUPPORT\AutoCAD 2011\Initial profile - AutoCAD.reg"

rem ... Other REG files loaded here



rem Push the default scale list

regedit /s "\\fsrvdphsan2\ADMINDATA$\CADSUPPORT\AutoCAD 2011\Initial scale list.reg"

rem Turn off Infocenter

regedit /s "\\fsrvdphsan2\ADMINDATA$\CADSUPPORT\AutoCAD 2011\Infocenter disable flag.reg"



echo Starting TrueView 2013...

"C:\Program Files\Autodesk\DWG TrueView 2013\dwgviewr.exe"

rem Push the TrueView settings

regedit /s "\\fsrvdphsan2\admindata$\CADSUPPORT\AutoDesk TrueView\2013\TrueView 2013 printers.reg"
regedit /s "\\fsrvdphsan2\admindata$\CADSUPPORT\AutoDesk TrueView\2013\TrueView 2013 conversion setups.reg"

rem ... and so on

 

Partial REG file for basic AutoCAD Settings:

[HKEY_CURRENT_USER\Software\Autodesk\AutoCAD\R18.1\ACAD-9001:409\Profiles\DPH_FOCUS_ACAD_2011\General]
"PrinterConfigDir"="P:\\AutoCAD Apps\\Generic AutoCAD\\Printers"
"PrinterDescDir"="P:\\AutoCAD Apps\\Generic AutoCAD\\Printers\\PMP"
"PrinterStyleSheetDir"="P:\\AutoCAD Apps\\Generic AutoCAD\\Support\\CTB"
"SheetSetTemplatePath"="P:\\AutoCAD Apps\\Generic AutoCAD\\Support\\Sheet sets"

... and a host of other REG keys, values, and data

 

Its all pretty basic, most of it came out of research in the Windows help.

----------------------------------
If you are going to fly by the seat of your pants, expect friction burns.
Adopt. Adapt. Overcome. Or be overcome.
A good question will be halfway to a good answer.


*Expert Elite*
scot-65
Posts: 2,204
Registered: ‎12-11-2003
Message 8 of 8 (1,627 Views)

Re: Deployment of Registry-Saved System Variables - AutoCAD 2013

06-13-2013 03:37 PM in reply to: mc-lemons

Here's a little heads up for some possible switches that require attention for your

environment. It is part of a much larger DCL I use.

 

The grayed out lines in the top group box is for 2009+ (program was built on a 2007).

 

The grayed out lines in the bottom group box means these switches are in alignment

(had they not been, they would not be grayed out...).

 

ACADsetupSwitches.gif

 

 

I use this after a fresh install, and after the program is started for the user.

 

???

 

Scot-65
Dyslexia is a permanent physical disability that cannot be seen.
Introverts is proof that there is indeed intelligent life on this planet.
Post to the Community

Have questions about Autodesk products? Ask the community.

New Post
Announcements
Are You Going To Be @ AU 2014? Feel free to drop by our AU topic post and share your plans, plug a class that you're teaching, or simply check out who else from the community might be in attendance. Ohh and don't forgot to stop by the Autodesk Help | Learn | Collaborate booths in the Exhibit Hall and meet our community team if you get a chance!