Vista dilemma

Ken Ray kray at sonsothunder.com
Thu Aug 2 12:42:58 EDT 2007


On Thu, 2 Aug 2007 09:23:49 -0600, Chris Sheffield wrote:

> So, question number one. Is there some way to tell my standalone, or 
> the Vista OS, that I really and truly want my check to be performed 
> on the Program Files directly, and not have things redirected to the 
> VirtualStore?

The only way to prevent virtualizing AFAIK is to turn off User Account 
Control. My understanding is that even if you're logged in as Admin, if 
you have UAC on, it will still virtualize because it is the 
*application*, not the user, that controls whether it can write to 
"protected" locations. And in order to do *that*, you'd have to find 
some way to make your application act at an elevated level. 

Of course in this case, you don't want to always write the file - you 
just want to know if the folder is writeable, which under Vista means 
knowing whether UAC is on or not.Actually there are three states 
(AFAICT):

1) UAC off: Completely disables UAC, no virtualization occurs.
2) UAC on ("quiet mode"): This will enable UAC, but suppress the 
elevation prompts for members of the Adminstrators group.
3) UAC on: Enables UAC, shows all elevation prompts regardless of group.

Unfortunately at the moment there are is some people who have done this 
with C++ and C#, but I don't think we have a command-line or other 
Rev-accessible way to determine this state. My recommendation would be 
to find some other place to write your files (I know, it's a pain, but 
unless there's someone out there who has a way to detect UAC state or 
wants to create a Rev external, I don't really see how you can know if 
your data was virtualilzed).

Any chance you can have people turn UAC off? When they do that they are 
back at the "XP" level of security (IIRC).

Ken Ray
Sons of Thunder Software, Inc.
Email: kray at sonsothunder.com
Web Site: http://www.sonsothunder.com/



More information about the use-livecode mailing list