VMS and other programs should not store settings in the registry. Setting should be stored in the database (which may be shared among multiple servers, multiple users, multiple clients, etc.).
Nuisance or Necessity? UAC and VMS
User Access Control (aka UAC) is Windows' attempt at thinking for and proactively protecting users. However, this can become a nuisance and a time hog when this feature works against you, especially when installing VMS software. Network administrators and IT departments are notorious for locking down an environment making it difficult to do your job. In this note, we explain why UAC is implemented, how it impacts VMS and what to do about it.
Background of UAC
**** ****** ********* ** ***** ******** ******* ********* on * ****** ** ******* ********* Systems ** ****** ******* **** **; it *** ********* ********** ** ***** (and *** **** **** ** ******?) and *** ** ***** ** ******* 7, *, *** ****** ****. **** feature ** ****** ** ** ******* and ******** ***-************** **** ********** *** software ** ****** *** ******* ** the ** **** *** ********** *** security. ** ** *******, *** ***** IT *********** *** ******* ************** ** lock **** ***** ******* *** ****** people *** *** ********** *****, ******* messenger, ***.
UAC's ****** ** *****
*** *** “*******” ** *** ********* System ***** ** ****** ** **/*** switch **** ****** ** ******** ******* to *** ******** [**** ** ****** available]. **** ** ********* ******* ****, if ****** ************ ******* ***** ********* ** ***** some ***** ** *** ******** ** the *********** ********* ******** ** **** as ******* ** ** ********* ******* after * ******.
**** ********** *** ********, *** ******** should ** **********, ****** *** *** vendor *** ********* ***** ************* ***** in ***** *********. *** ****** ** that *** ******** ****** ******* ***** user ******** ******** (**** ** ****** behavior, **** *****, **** ********* **************, etc) ** *** ******** ** *** machine.
**** ** *** ** ******** ******** of *** *** ****** *** ************ of *** *** ******** ******. ** order *** ******** ******** *** *** application ***** ** ** ***** ** the ******** ****** ************ *** **** must **** *********** ** ** ****. UAC ****** ****.
*******, **** ******** **** ** *******, **** to ******** ***** *** ****** ***** are ****** ** *** ********. **** does *** ******* ***, *** **** need ******** ************* ***** *********** (********* provided ** **** ** *** *****).
*** *** ******
** *** *** ******** ************ ** attempted ******* ******* *** *** ******* pop-up ******** ****** *** ************ ******* will ******. ******** **** “****** ** write *****.***” ** ********* ******* ** an ********** *** ********* ** *** able ** ***** *** ***** ******. Additionally, *** ***-*** **** ***** *** user *** ******* ** ****, ******, or *** *****, *** **** ** these ******* *** ***********. **** ****** ignore *** ***** ** **** ********* files **** ***** ********* ******* *** software ** *** ********.
*** *** ******
** ****** ********, ** *** **** may **** **** **** **** ***** VMS ****** ** ******** ***** ***** settings (*** *******, * **** ** servers) *** *******. **** ** ******* indication **** *** ** ** ** the **** ****** ** ** *** machine ** *** ** ************* ******* in ***** *** *** **** ** servers ** ** ***** ** ******** access ** ****** *** ********.
What ** **
***** ********* *** ******* **** *** options:
- *** *** ******* *************: **** **** have ** ***** ***** ******** **** time *** **** ** ******* *** configure *** ********.
- *** **** ******* ************* ** **** off *** ** ****** **** *** an ************* ***** ****** ** ***** point *** *** **** *** *** yourself.
****'* *** ** **** *** ***:
- *** ** ** * ***** ************* user.
- ** *** ****** *****, **** ***.
- ****** *** “****** **** ******* ******* Settings”
- ***** *** ****** **** ****** ****** to ***** ******
- ***** **
- ******* *** ******* *** ******* ** take ******
**** ***** ***** ** ** ******:
**********
** * *********, ** ** *********** that *** ** *********** ****** *** completely ***** ** ********* *** ************ process **** **** *** *** ***** a ***** ************* **** *****. ********** the *** ******* ******** *********** **** ensure *** ******** ****** *** ********* registry **** ** ***** ****** ******** and **** ****** *** ******** ********* as ********. ******, **** *** *** software ** *********, ** *** *** disabled, **** **** ** **-****** **.
Thanks Michael, valid point indeed. It is not uncommon to have a VMS store user settings in the registry. One possible reasoning is that storing in the database would cause the end user's client application to lose all favorite settings in case of a database failure or maybe a sub LAN connection loss to the database server itself.
Moreover, general settings for the (thick) client application such as data connection string to the database and VMS server must be stored in the registry. Creating a VMS with this architecture in mind allows the client to operate with minimal feature loss in some cases. Keep in mind though that this is certainly not the best design and probably a good indicator the software was created using an older technology or developer skill. For example, if using .config or XML settings file it would reduce the registry dependency which is also a huge security issue if not done properly.