Skip to content

Hide "Files In Use" dialog behaving as if ignore was chosen #8807

Open
wixtoolset/wix
#573
@charles-juicelabs

Description

@charles-juicelabs

User story

As a setup developer, I can author an installer for extension DLLs that avoids showing the "Files In Use" dialog, instead behaving as if the user had chosen ignore. This avoids an extra step in the install and users confused as to why seemingly unrelated applications need to be closed.

We develop an application with a DLL that is loaded into many processes, largely outside of our control. It is confusing for our users when they are prompted to close these seemingly unrelated applications when we update the DLL. Updating the DLL requires a reboot independently of any files being in use anyway, so hiding the "Files In Use" dialog is a nice solution for us.

There are other examples of people wanting to disable the "Files In Use" dialog:

Proposal

Add bal:DisplayFilesInUseDialogCondition, similar to bal::DisplayInternalUICondition, to be added to MsiPackage elements to control the display of "Files In Use" in WixStandardBoostrapperApplication.

For example:

<Bundle Name="...">
  <!-- ... -->
  <Chain>
    <MsiPackage 
      Id="..."
      SourceFile="..."
      bal:DisplayFilesInUseDialogCondition="no"
    />
  </Chain>
</Bundle>

Considerations

I haven't added any documentation but I'm happy to do so once you're happy with the general approach here.

I wasn't sure if bal:DisplayFilesInUseDialogCondition was appropriate for other elements beyond MsiPackage or if it needed to be recognized by other built-in bootstrappers. Happy to do some amount of work here if necessary to get this PR merged.

Thanks for all your work on WiX! WiX has worked very well building installers for our project -- being unable to hide the "Files In Use" dialog has been the only real problem we've had.

Metadata

Metadata

Labels

WixStdBAwipWiX Improvement Proposal

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions