AW: Where to put an ini file on Win with write access for all users?

Tiemo Hollmann TB toolbook at kestner.de
Mon Feb 16 10:38:44 EST 2009


Hi Jim,
Thank you for coaching, really helpful!
Tiemo


> -----Ursprüngliche Nachricht-----
> Von: use-revolution-bounces at lists.runrev.com [mailto:use-revolution-
> bounces at lists.runrev.com] Im Auftrag von Jim Bufalini
> Gesendet: Montag, 16. Februar 2009 16:00
> An: 'How to use Revolution'
> Betreff: RE: Where to put an ini file on Win with write access for all
> users?
> 
> Hi Tiemo,
> 
> > very enlightening, but still some follow up questions :)
> >
> > I know the word legacy, but am not sure, what is a legacy file?
> 
> Something that for, God knows what reason, Windows feels it needs to
> protect
> itself against and so it "sandboxes" it.
> 
> > What makes Vista to recognize my Ini.xml as a legacy file, could I give
> > it
> > another name or dir (and being accessed by all users) to not being a
> > legacy
> > file and being virtualized? -
> 
> Not sure. You can experiment.
> 
> > Your proposal to use the registry is
> > right now
> > a too big redesign for me.
> 
> It's your call, but what you need to understand is that disk files are
> owned
> by user classes. Registry entries are owned by applications. So, once a
> user(s) gives an application the right to run, it can access the registry.
> This access is identical on XP and Vista and is irrespective of which user
> is running the app.
> 
> Here are two little Functions I use to get you started. To use these, your
> application should be installed by an installer. All installers will
> create
> a default entry for your application in the registry in
> HKEY_LOCAL_MACHINE\SOFTWARE\<Your App Name>\ that has the location of your
> exe on disk.
> 
> You can confirm this by running regedit after an install. Warning: DO NOT
> make ANY changes. Just look! Another caution: The registry is for holding
> settings, not data. So don't stick anything large there because the
> registry
> is read into memory and you don't want to bloat it.
> 
> With all of the above in mind, these two functions are safe to use. Rename
> them and put your app name where I've indicated. So if your app is
> MyRevApp.exe put in MyRevApp:
> 
> FUNCTION GetRegValue pKey, pType
>     local tKey
>     local tResult
>     -----
>     put "HKEY_LOCAL_MACHINE\SOFTWARE\<Your Application Name Here>\" & pKey
> into tKey
>     IF pType <> empty THEN
>         put queryregistry(tKey, pType) into tResult
>     ELSE
>         put queryregistry(tKey) into tResult -- assumes text
>     END IF
>     return tResult -- the actual value
> END GetRegValue
> ------------------------------------
> FUNCTION SetRegValue pKey, pValue, pType
>     local tKey
>     local tResult
>     -----
>     put "HKEY_LOCAL_MACHINE\SOFTWARE\<Your Application Name Here>\" & pKey
> into tKey
>     IF pType <> empty THEN
>         put setregistry(tKey,pValue,pType) into tResult
>     ELSE
>         put setregistry(tKey,pValue) into tResult -- assumes text
>     END IF
>     return tResult -- true or false
> END SetRegValue
> 
> Another consideration: If your app is cross OS, you need to use this only
> for windows (any version) and not Mac, etc. Since you are only using text
> (I
> assume), you can forget about pType. pKey can be any name you dream up.
> Set
> it. Then get it. Windows takes care of saving it off to disk.
> 
> > What you told about SQLite, happens by the way also with my Valentina
> > db.
> > Right now, I just need read only, but I wouldn't know what to do with
> > read/write and virtualization of the db....
> 
> I am not a Valentina expert, but I'd be very surprised by this. Back Q3 of
> 2007, there were lots of complaints by desktop DB users all across the
> Internet and all the DB manufacturers had to address this issue. I'm sure
> Valentina addressed it, just like SQLite did. Maybe a Valentina expert can
> jump in here and tell you and everybody else what to do.
> 
> As to SQLite, as soon as Rev updates the dbsqlite.dll driver to the latest
> SQLite engine, you'll be able to use SQLite on Vista without any
> virtualization.
> 
> > Thanks for your valuable coaching!
> > Tiemo
> 
> Your welcome.
> 
> Jim Bufalini
> 
> 
> _______________________________________________
> use-revolution mailing list
> use-revolution at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution




More information about the use-livecode mailing list