www.delorie.com/archives/browse.cgi | search |
On Mon, Mar 09, 2009 at 11:21:52AM +0100, Corinna Vinschen wrote: >On Mar 9 09:55, Andy Koppe wrote: >> Spiro Trikaliotis: >> > You can replace a running exe (or dll) by doing the following: >> > >> > 1. rename the .DLL or .EXE >> >> Are you sure that's possible? I'd expect Windows to complain loudly at >> that point. > >You can in theory, but that won't work reliably for subsequent Cygwin >processes. If you replace a running processes' executable with a new >release, and if that process is one of the forking kind, every >subsequent call to fork() will break. If you replace the Cygwin DLL >with a new release on the fly, then *any* subsequent fork() will almost >surely break. Right. And that has been the main reason why writing an installer which uses Cygwin is problematic. I've been using the "rename the dll or executable" technique for about ten years to install a newly-compiled version of cygwin1.dll on a system with a running version of cygwin. However, this hoses any running processes and it even makes running any cygwin processes flaky until all processes which use the old DLL have been shut down. cgf -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |