How can I skip the license agreement?

Mar 5, 2015 at 10:49 PM
I'm trying to figure out how to skip the license agreement entirely and wasn't able to find an example from the Samples directory. I'm using the UI WUI.WixUI_InstallDir. I've tried ProgressOnly, but it doesn't provide enough user interaction. I'm hoping there's a way to do this without creating a custom UI.
Mar 13, 2015 at 5:47 AM
Edited Mar 13, 2015 at 5:55 AM
You have a few option here.

With the current release (v1.0.8.0) you can accomplish this via XML Injection:
    ...
    Compiler.WixSourceGenerated += Compiler_WixSourceGenerated; 
    Compiler.BuildMsi(project);
}

static void Compiler_WixSourceGenerated(XDocument document)
{
    document.Root.Select("Product").Add(XElement.Parse(
    @"<UI>
        <Publish Dialog=""WelcomeDlg"" Control=""Next"" 
                 Event=""NewDialog"" Order=""5"" Value=""InstallDirDlg"">1</Publish>
        <Publish Dialog=""InstallDirDlg"" Control=""Back"" 
                 Event=""NewDialog"" Order=""5""  Value=""WelcomeDlg"">1</Publish>
      </UI>"));
}
You can also achieve the same by assigning project.CustomUI but the current implementation of the CustomUI class would require too verbose declaration. However the next release will have a DialogSequence derivative of CustomUI class to allow a much simpler declarative UI customization:
project.CustomUI = new DialogSequence().On(Dialogs.WelcomeDlg, Buttons.Next, 
                                           new ShowDialog(Dialogs.InstallDirDlg))
                                       .On(Dialogs.InstallDirDlg, Buttons.Back, 
                                           new ShowDialog(Dialogs.WelcomeDlg));
Mar 13, 2015 at 9:16 PM
Thanks, that solved the issue!