SECURELOAD will not work in a Reactor... Using AC2014 and in an effort to prevent users from loading other than company approved programs and macros we aretrying to monitor “SECURELOAD” when it changes using a reactor and force/set it to something else but it does not work. It just return the word "SECURELOAD" and the number set following at the Command prompt.. I have read the Bundle white pages. Studied all information in AC2013 and AC2014, I have taken the AU class on security. Attened the discussion groups at AU as well. But there is something missing in this process of security. It is, "How do we prevent users from loading code into AutoCAD once started?". . Our goal is to load only company approved code and prevent user loading of personal preference or pirated code. We want them to draw not add code or bring stuff in that has not be reviewed. We are SOX compliant and have to prevent this. Let alone the possible idea of being busted for using code that could bring fines to the company. . We were hoping with the new release of AC2014 and the Secureload features that it would be possible to monitor this system variable and when changed from other than 2 we set it back. . The reactor and results of running the reactor shown below: Ideas to do this are welcome!!! . (vl-load-com) (defun c:CKSL () (if *SECURELOADReactor* (progn (vlr-remove *SECURELOADReactor*) (setq *SECURELOADReactor* nil) (setq SECURELOAD:Callback nil) (prompt "\nReactor stopped. ") ) (progn (setq *SECURELOADReactor* (vlr-sysvar-reactor ;I have tried also “vlr-editor-reactor” "" '( (:vlr-sysvarchanged . SECURELOAD:Callback) ) ) ) (defun SECURELOAD:Callback (rea var / varName) (if (and (wcmatch (setq varName (strcase (car var))) "SECURELOAD") (cdr var) ) (setvar "SECURELOAD" 1); Problem is it just writes to the command line “SECURLOAD” 1. Like it doesn’t see setvar ;;; (alert ;;; (strcat "\n[App Event] : System Var Changed\t\t: " varName) ;;; ) ) ) (prompt "\nReactor started. ") ) ) (princ) ) ACAD Text Window (F2) results follow: Command: CKSL <-- Manual execute of the reactor Reactor started. Command: Command: 'VLIDE Command: Command: SECURELOAD Enter new value for SECURELOAD <1>: 0 <-- changed the value manually. ; error: AutoCAD variable setting rejected: "SECURELOAD" 1 <-- Results of reactor -->but works if SECURELOAD is replaced with another sysvar like FILEDIA sysvars. Please consider this as a positive feature. Tommy Holder
↧