Yeah, there are some design issues in the DIFxApp code around Upgrades I'm still trying to figure out what to do with DIFx since we don't have the code to fix it here. I'll try to find someone to forward this thread to see if we can't get some movement (not that it has worked yet).
On Sat, Jan 16, 2010 at 2:05 AM, Blair <os...@live.com> wrote: > I only had success using DIFxAPP when scheduling RemoveExistingProducts > after InstallFinalize (I never tried just before InstallFinalize in that > product). I was never able to get it to upgrade properly in a reliable > fashion when scheduling removal early. > > -----Original Message----- > From: Bruce Cran [mailto:br...@cran.org.uk] > Sent: Friday, January 15, 2010 10:52 AM > To: General discussion for Windows Installer XML toolset. > Subject: [WiX-users] Problems with DIFxAPP and major upgrade > > Hi, > > I'm having problems doing a major upgrade. I'm using WiX 3.5 to install a > driver using DIFxAPP and start it using ServiceControl: > > <Component Id="sctp.sys" Win64="$(var.Win64)" > Guid="fa538c80-6b0b-4736-b479-a3dce8f8a6a8"> > <File Id="sctp.sys" Name="sctp.sys" KeyPath="yes" Checksum="yes" > Source="bin\$(env.BUILD_ALT_DIR)\sctp.sys" /> > <RegistryKey Action='createAndRemoveOnUninstall' Id='eventlog' > Root='HKLM' > > Key='System\CurrentControlSet\Services\Eventlog\System\sctp'> > <RegistryValue Id='EventMessageFile' Name='EventMessageFile' > Type='expandable' > Value='%SystemRoot%\System32\drivers\sctp.sys'/> > <RegistryValue Id='TypesSupported' Name='TypesSupported' > Type='integer' Value='7'/> > </RegistryKey> > <difx:Driver Legacy="yes"/> > <ServiceControl Id="sctp_service" Name="Sctp" Start="install" > Stop="both" Remove="uninstall" Wait="no"/> > </Component> > > Everything goes well during an installation, but I've seen issues both > during uninstall and a major upgrade: > if I try and uninstall SctpDrv before the DIFx driver package, it claims to > have failed but it does complete the > uninstallation; during a major upgrade it removes the previous version but > fails to complete the > upgrade, with DIFxAPP erroring out with: > > DIFXAPP: ERROR: Unable to revert to a previous driver store for service > 'Sctp'. > DIFXAPP: ERROR: Will attempt to uninstall the driver. > DIFXAPP: ERROR: Error unable to open service 'Sctp' to delete it because > of > error 0x424 > DIFXAPP: ERROR: Error occurred while deleting service to uninstall the > driver store. > DIFXAPP: ERROR: We were unable to install any other driver store entry to > support the service Sctp and we also failed to delete the service. > DIFXAPP: ERROR: Failed to uninstall the driver. Attempting to undo system > changes ... (Error code 0x643: Fatal error during installation.) > > It leaves the driver package entry present, but with SctpDrv uninstalled. > > the only strange thing I've noticed is that the driver and netshell helper > is listed twice in the list of components: > > MSI (s) (44:C0) [17:09:02:640]: Feature: Complete; Installed: Local; > Request: Absent; Action: Absent > MSI (s) (44:C0) [17:09:02:640]: Component: ws2sctp.h; Installed: Local; > Request: Absent; Action: Absent > MSI (s) (44:C0) [17:09:02:640]: Component: echo_client.c; Installed: Local; > Request: Absent; Action: Absent > MSI (s) (44:C0) [17:09:02:640]: Component: echo_server.c; Installed: Local; > Request: Absent; Action: Absent > MSI (s) (44:C0) [17:09:02:640]: Component: echo_server2.c; Installed: > Local; > Request: Absent; Action: Absent > MSI (s) (44:C0) [17:09:02:640]: Component: spinstall.exe; Installed: Local; > Request: Absent; Action: Absent > MSI (s) (44:C0) [17:09:02:640]: Component: echo_client.exe; Installed: > Local; Request: Absent; Action: Absent > MSI (s) (44:C0) [17:09:02:640]: Component: echo_server.exe; Installed: > Local; Request: Absent; Action: Absent > MSI (s) (44:C0) [17:09:02:640]: Component: sctpmon.dll; Installed: Local; > Request: Absent; Action: Absent > MSI (s) (44:C0) [17:09:02:640]: Component: sctp.inf; Installed: Local; > Request: Absent; Action: Absent > MSI (s) (44:C0) [17:09:02:640]: Component: sctp.cat; Installed: Local; > Request: Absent; Action: Absent > MSI (s) (44:C0) [17:09:02:640]: Component: sctp.sys; Installed: Local; > Request: Absent; Action: Absent > MSI (s) (44:C0) [17:09:02:640]: Component: sctpsp.lib; Installed: Local; > Request: Absent; Action: Absent > MSI (s) (44:C0) [17:09:02:640]: Component: libsctpsp.a; Installed: Local; > Request: Absent; Action: Absent > MSI (s) (44:C0) [17:09:02:640]: Component: README.txt; Installed: Local; > Request: Absent; Action: Absent > MSI (s) (44:C0) [17:09:02:640]: Component: CHANGES.txt; Installed: Local; > Request: Absent; Action: Absent > MSI (s) (44:C0) [17:09:02:640]: Component: SctpDrv.chm; Installed: Local; > Request: Absent; Action: Absent > MSI (s) (44:C0) [17:09:02:640]: Component: sctpsp32.dll; Installed: Local; > Request: Absent; Action: Absent > MSI (s) (44:C0) [17:09:02:640]: Component: __sctpmon.dll65; Installed: > Null; > Request: Absent; Action: Absent > MSI (s) (44:C0) [17:09:02:640]: Component: __sctp.sys65; Installed: Null; > Request: Absent; Action: Absent > > Am I misunderstanding how to use DIFxAPP, or is there another problem with > my WiX sources? > > The Upgrade section I'm using is: > > <Upgrade Id="$(var.UpgradeCode)"> > <UpgradeVersion > Minimum="$(var.VersionMajor).$(var.VersionMinor).$(var.VersionRev)" > IncludeMinimum="no" > OnlyDetect="yes" > Language="$(var.Language)" > Property="NEWPRODUCTFOUND"/> > <UpgradeVersion Minimum="1.1.0" > IncludeMinimum="yes" > > Maximum="$(var.VersionMajor).$(var.VersionMinor).$(var.VersionRev)" > IncludeMaximum="no" > Language="$(var.Language)" > Property="UPGRADEFOUND"/> > </Upgrade> > > with RemoveExistingProducts scheduled after InstallInitialize. > > The msi log is available at > http://www.bluestop.org/SctpDrv/tmp/msi_log_20100115.txt - the source file > containing the components is at > > http://www.bluestop.org/viewvc/repos/sctpDrv/wix/module-common.wxs?revision= > 44&view=markup . > > -- > Bruce Cran > > > > > > ---------------------------------------------------------------------------- > -- > Throughout its 18-year history, RSA Conference consistently attracts the > world's best and brightest in the field, creating opportunities for > Conference > attendees to learn about information security's most important issues > through > interactions with peers, luminaries and emerging and established companies. > http://p.sf.net/sfu/rsaconf-dev2dev > _______________________________________________ > WiX-users mailing list > WiX-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wix-users > > > > ------------------------------------------------------------------------------ > Throughout its 18-year history, RSA Conference consistently attracts the > world's best and brightest in the field, creating opportunities for > Conference > attendees to learn about information security's most important issues > through > interactions with peers, luminaries and emerging and established companies. > http://p.sf.net/sfu/rsaconf-dev2dev > _______________________________________________ > WiX-users mailing list > WiX-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wix-users > > -- virtually, Rob Mensching - http://RobMensching.com LLC ------------------------------------------------------------------------------ Throughout its 18-year history, RSA Conference consistently attracts the world's best and brightest in the field, creating opportunities for Conference attendees to learn about information security's most important issues through interactions with peers, luminaries and emerging and established companies. http://p.sf.net/sfu/rsaconf-dev2dev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users