[Geany-Devel] [Geany-devel] Remove MSYS dependency of Geany on Win~1 - VirtualStore data files

Matthew Brush mbrush at codebrainz.ca
Wed Dec 12 15:24:34 UTC 2012

On 12-12-12 05:25 AM, Nick Treleaven wrote:
> On 11/12/2012 19:20, Dimitar Zhekov wrote:
>> On Tue, 11 Dec 2012 17:44:20 +0000
>> Nick Treleaven <nick.treleaven at btinternet.com> wrote:
>>> On 10/07/2012 12:55, Nick Treleaven wrote:
>>>>>> 2. A weird problem. Installing from cmd.exe doesn't overwrite
>>>>>> geany.glade (and maybe some other files) even though it appears to
>>>>>> succeed. [...]
>>> So, I did a search for geany.glade and discovered it in:
>>> c:\Users\Nick\AppData\Local\VirtualStore\Program Files\Geany\data
>>> reading up on the VirtualStore path, I found it gets created when an
>>> application tries to write to a system path like Program Files, without
>>> the correct privileges. The application then silently receives the
>>> VirtualStore versions of files instead. [...]
>> Now that's a... a system designed without security, attempting to
>> provide "compatibility" with weird tricks.
>> What's the situation with geany.exe in this case - doesn't it create
>> even more problems? The newest win~1 versions are very sinsitive about
>> replacing executables.
> To be honest I don't understand exactly when the VirtualStore path gets
> written to, but for Geany I think we probably want to just disable it

IIUC it's whenever Geany writes out to files in %PROGRAM_FILES% et al. 
So if you open C:\Program Files\Geany\data\filetypes.foo, edit it, and 
save it, it'll go into that phony directory.

> altogether. I think this requires a 'manifest' XML file, referenced in
> the .rc file:
> http://msdn.microsoft.com/en-us/library/bb756929.aspx
> Yet another Windows build file with a version and metadata to update on
> release :-/

I actually have a patch sitting on my Win7 laptop that adds an XML 
manifest file to the resource. I made it because it allows the native 
dialogs to look more "native" and less win95-ish by using the current 
Windows theme. If you want I can dig up that patch and commit it and 
then we can just add whatever else to it.

Matthew Brush

More information about the Devel mailing list