Monday, July 22, 2013

Autodesk Exchange Apps Portathon Event

Do you have apps you've been wanting to submit on the Autodesk Store but haven't had time and need some motivation? Now is your chance.

For a 24 hour period on September 13-14th, Autodesk will be paying $100 per app submitted (up to 5 apps per person are eligible). You can read more about the event at the links below - and note that you must register to attend the event!!

Good luck developers!!

http://adndevblog.typepad.com/autocad/announcing-the-autodesk-exchange-apps-portathon.html

http://adndevblog.typepad.com/autocad/2013/07/get-your-exchange-apps-done-by-september-14-and-receive-us100-per-app-published.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+AutocadDevblog+%28AutoCAD+DevBlog%29

Tuesday, July 9, 2013

AutoCAD 2014 - New Security Features

One of the newest features in the 2014 product(s) is the implementation of security features. With the AutoCAD* (verticals included) malware going around, Autodesk has implemented two new variables that work as a blocking mechanism for loading external code files - that is, LISP Routines, .NET Files, etc. You can read more about the malware going around here and here.

This new system has it's positives and negatives for sure. Obviously good because it provides added prevention to loading external malicious code, but can be seen as bad because it's an additional dialog for every file you need to load with workflow routines.

 
There are a few ways around this system, as always, and with limited information being out on the web I thought I'd provide some additional things I have found. Of course there is always a way to turn these things off all together which can be accomplished with the new setting SECURELOAD - though this is not recommended as it will leave you vulnerable. You can read more about this here.
 
Manually, you can go into the Options menu, Files Tab, open up Trusted Locations and add the folders of trusted paths. Note that if the path is not set to READ ONLY, AutoCAD will prompt you to manually allow - but this is not recommended as malicious code could save a file into a write enabled path. Once paths are added here, AutoCAD will allow loading of any files in the path without the above dialog appearing. I believe that this is restricted to files directly under the main folder and not under sub folders, though I have not found documentation on this.
 
 
Additionally trusted locations can be added from the command line with the new command TRUSTEDLOCATIONS. Each path can be written out and separated by semicolons ";". For example, C:/This/Is/My/Path;C:/This/Is/Another/Path.
 
With much of AutoCAD* allowing for a cloud based system for file storage, trusted domains can also be added via the command TRUSTEDDOMAINS; again via separated by semicolons ";". You can read more about this here and here.
 
Another way to deal with loading external files is with the recent auto loading system that debuted in AutoCAD 2012 and made it to many AutoCAD verticals in 2013. AutoCAD* 2014 will automatically load bundle files from the Autodesk plugins folder. The bundle files can get quite involved as they are setup to run on multiple platforms as programmed by the developer, thus I won't get into how they work here in this blog, however you can read up more on this here and here.
 
Of course the autoloader system is great, but it can be a bit overwhelming for those who do not do a lot of programming. Thus I have created a LISP routine that can be used for setting the trusted path locations automatically (this could easily be modified for domains as well). Take the code below and paste into a text file and save as a LISP routine - then modify the paths to your own (shown as red text below). This code can also be added into an ACAD.lsp file and saved in the program support folder as AutoCAD will still autoload from there without the security dialogs as well.
 
 
;;SET TRUSTED PATHS
;;Written by Steve Hill, 7/3/2013
;;www.beyondcivil3d.blogspot.com
 
;;This function checks if string 1 (s1) contains string 2 (s2)
;;If not, it combines string 1 and string 2 with a semicolon in between and returns the new string.
;;If it does, it just returns the first string
(defun addtrustedpath ( s1 s2 )
 

           (if (= (strlen s1) 0)
 
                  (progn
                         (strcat s1 s2)
                  );progn
 
                 (progn
                         (if (= (vl-string-search s2 s1) nil)
                                   (progn
                                            (strcat s1 ";" s2)
                                   );progn
                                  (strcat s1)
                          );if
                  );progn
 
             );if
);end defun
 
 
;;This function begins with the trusted path string obtained in the next function (p1).
;;If nothing, it begins with nothing. We then add the paths listed below to this string.
;;The Addtrustedpath function checks to make sure the path does not already exist.
(defun trustedpathstring ( p1 )

              (setq p1 (addtrustedpath p1 "C:\\My\\Path\\Number1"))
               (setq p1 (addtrustedpath p1 "C:\\My\\Path\\Number2"))
              (setq p1 (addtrustedpath p1 "C:\\My\\Path\\Number3"))
              ;;copy code on line above and change path to add more paths here
              ;;continue until all of your trusted paths are added to code here.
);end defun

;;This function gets the current trusted paths, then passes the string to the above function
;;And finally sets the trusted paths variable obtained from the above functions
(defun settrustedpaths ()

              (setq currpaths (getvar "trustedpaths"))
              (setvar "trustedpaths" (trustedpathstring currpaths))
);end defun

(settrustedpaths)

(princ "\n\n****Trusted paths have been set****")
    
Overall, the new security features are a good thing. I recommend leaving them on to ensure your system is not loading malicious code files. Please feel free to comment if you have any better suggestions.

 
 
 


Thursday, July 4, 2013

Vacation in the San Francisco Bay / Napa Valley Area


My wife and I are celebrating our 6 year wedding anniversary this weekend in the San Francisco Bay Area and Napa Valley. On our drive up to Napa Valley, I thought it was a must for us to swing by the Autodesk Headquarters to get a photo. After all I've spent at least 40 hours a week for nearly 52 weeks a year for almost 14 years in my professional career using Autodesk software - a substantial amound of time.

Autodesk has helped me have a successful career and also provided means for me to recently startup my own LLC writing custom apps. Check out my apps on my website:

www.redtransitconsultants.com

Tuesday, July 2, 2013

Improving Healthcare Buildings with BIM

Autodesk has recently put together a nice advertisement for promoting the use of BIM in the healthcare industry design process. This is a great reminder that as designers of our world, it's not always about how quickly or cheaply something can be completed, but also about what is the best design for the project. As it's clearly stated in this ad for healthcare buildings, good, well thought out design, can help save lives.

BIM technologies are a great resource at our fingertips to help give us more answers and solutions up front in the design process.