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