On 2/26/2018 12:45 PM, Jon Turney wrote:
> You might find the code in  a good starting point for an alternate
> implementation, which doesn't require renaming the executable.
>  https://cygwin.com/ml/cygwin-apps/2011-04/msg00054.html
>> Sounds wonderful but couldn't you just rename the original setup.exe
>> out of the way, copy a new version over it in place, and then
> I'm just following a sequence of actions which a bit of google
> research found other people had successfully used.
> what you suggest seems like it should work, although I'd perhaps be a
> bit wary of assuming that MoveFile() on the running executable works
But my suggestion removes the need to MoveFile() of the open executable
as the name of the new version file would be different. The other
possibility I suppose would be to give the file being downloaded a name
with the version or date of download appended. But I still think a
version number on the setup executable file name could potentially be
* A person could check cygwin.com and know that the version of setup he
has is different just by visually checking the name.
* The name of the executable represents the version expected by setup.ini.
* Historical preview of someone doing research for previous versions.
* Better serves convention with other projects delivering installers for
Windows executables; Firefox, Thunderbird, MySQL, Postgres, PHP, Apache,
etc. all have a version number for the Windows executable.
* Scripts using the name of the executable without the version. This is
easily remedied by a symlink to the current executable.