miktro wrote:
> I am running Windows 7 Ultimate 64bit.
>
> I have a situation in which two versions of a file are simultaneously
> present and available to programs.
>
> Thre is a text file in a program directory from which error message
> are read.
>
> When I run the program I get an error message "Error 1234".
> When I edit the message file in a text editor this line does not
> exist. There is a new line present "New Error mesage 1234" - as
> there is suppose to be as I have just copied across the latest
> updated files.
>
> However if I edit the file using a cygwin command (e.g. 'ed' then the
> new lines are not present but the oldones are!
>
> Thsi duality seems to hold true for many commands.
> Regular Windows programs see the new file contents,
> cygwin and other 'non-regular' windows programs see the old contents.
>
> It also holds true after a soft restart, hard reboot and after
> turning off write caching on all discs.
>
> This also goes even deeper.
> If I delete the file in Windows Explorer then all windows program
> compain tha t the file no longer exists
> but all cygwin programs carry on happily procdessing the old version.
>
> If I delete this old version using the cygwin comand 'rm' then
> cygwinalso compains the file does not exist.
> Adn if I now copy across a new version then all sets of programs
> proces the same, new version.
>
> How is this dual presence of a file possible?
Because Windows protects certain locations from users. The most notable
example being Program Files.
It's called File Virtualization.
The net effect is that attempts by accounts with inadequate privileges
results in files being created/edited in the users own profile space
(rather than wherever the user/application thinks the file is), and the
applications that made the attempts think they were successful. The
original file is left intact.
--
Steve Foster
For SSL Certificates, Domains, etc, visit.:
https://netshop.virtual-isp.net