Mailing-List: contact cygwin-apps-help AT sourceware DOT cygnus DOT com; run by ezmlm Sender: cygwin-apps-owner AT sourceware DOT cygnus DOT com List-Subscribe: List-Archive: List-Post: List-Help: , Delivered-To: mailing list cygwin-apps AT sources DOT redhat DOT com Message-ID: <01d101c16973$a2a655d0$0200a8c0@lifelesswks> From: "Robert Collins" To: Cc: References: <20011109111335 DOT E24506 AT redhat DOT com> <01b401c16972$94129ac0$0200a8c0 AT lifelesswks> <20011109180415 DOT D11462 AT redhat DOT com> Subject: Re: setup.exe suggestion [ptsekov AT syntrex DOT com: Re: sshd dies] Date: Sat, 10 Nov 2001 10:09:50 +1100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 X-OriginalArrivalTime: 09 Nov 2001 23:15:57.0896 (UTC) FILETIME=[7D186C80:01C16974] ----- Original Message ----- From: "Christopher Faylor" To: "Robert Collins" > Maybe we can force this by changing how the files are written? If we use > the right sharing, maybe even Windows 9x will complain on overwriting a > file. That might work. The current scenario to solve is: User selects upgrade/uninstall package foo. Setup deletes n files from foo, then finds a .dll it cannot delete. Setup reports an error and the user is left with package foo broken. What we need to do is check we can delete *all* files in the package in advance. This includes .dll's, .exe's, and shared data files. If we can find a shared mode such as you suggest, we could move all the files 1 by 1 to file.setup.backup in the same dir (prevent cross disk copying). And if that succeeds, then delete them all, if not rollback the activity. Rob