|
From: <Kli...@t-...> - 2003-08-22 12:47:28
|
Shawn Pringle wrote: > I don't think we need to throw out the whole thing here. I agree with that. Windows users want an easy setup or you definitely will loose users there. > jEditLauncher does its job when setup. The problem is there are 1 + > the number of users of jedit who have to set it up. First the > administrator installs it with jedit, not a problem. But when ever > someone who uses Windows NT logs in and tries to run jedit from the > start menu he gets the error message that 'jEditLauncher is not > installed', when infact it is it just hasn't had the parameters setup > in the registry for that user yet. The program then allows you to > setup these parameters for yourself but some users get messed here. Yes, that could be handled better. > Instead of making each user do that, I think it is better if the > install program iterates through all of the user keys and installs > parameters for each user quietly. Hmm, there might be problems. Under WinNT/2000/XP you can have ACLs, which represents access rights, on registry keys as well as on the file system. I dont know, if you always will be able to access all the stuff under HKEY_USERS when running as Administrator. I just looked on my system and with an admin account I can access one other user, but not all. Dont know if I am doing it right, but I think this might be an issue. I have a better idea: There is the key HKEY_LOCAL_MACHINE which is the general key for all users. Most dumb software puts its setting here and all users must use the same settings. But to store settings for the current user, you should put stuff into HKEY_CURRENT_USER (which is just a copy of the key of the current user under HKEY_USERS). For jedit these two keys are interesting: - for the current user (lets call it KEY_USER): HKEY_CURRENT_USERS\Software\www.jedit.org\jEditLauncher\4.0 - for all users (lets call it KEY_ALL): HKEY_LOCAL_MACHINE\Software\www.jedit.org\jEditLauncher\4.0 The current version of jeditlauncher uses only KEY_USER. An improved jEditLauncher could now act the following way: 1) Upon the first install by an administrator, general settings (the jvm and standard stuff) is put into KEY_ALL (the first install is determined by a missing KEY_ALL). For the current admin there is also generated a copy under KEY_USER. 2) A normal start of jeditlauncher (KEY_ALL exists), first checks if a KEY_USER exists, and if it does, uses those settings. If they do not exist, it uses the standard settings under KEY_ALL. 3) Only if a non-admin user starts jEdit for the first time, and there are no settings under KEY_ALL, a message "jEditLauncher is not installed. Please run it from an administrator account to set it up for all users" or something like that appears. There might be the feature to set up for the current user only (thus write only to KEY_USER), so that you can install jEdit without admin rights. Note: only admins have write access to stuff under HKEY_LOCAL_MACHINE/KEY_ALL! I think this is the supposed way to handle user settings in a Windows registry. Alex -- Alexander Klimetschek <kli...@t-...> |