diff options
Diffstat (limited to 'src/WixToolset.Core.WindowsInstaller/MsmBackend.cs')
-rw-r--r-- | src/WixToolset.Core.WindowsInstaller/MsmBackend.cs | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/src/WixToolset.Core.WindowsInstaller/MsmBackend.cs b/src/WixToolset.Core.WindowsInstaller/MsmBackend.cs index e39eb883..2323f8dd 100644 --- a/src/WixToolset.Core.WindowsInstaller/MsmBackend.cs +++ b/src/WixToolset.Core.WindowsInstaller/MsmBackend.cs | |||
@@ -13,12 +13,26 @@ namespace WixToolset.Core.WindowsInstaller | |||
13 | { | 13 | { |
14 | public BindResult Bind(IBindContext context) | 14 | public BindResult Bind(IBindContext context) |
15 | { | 15 | { |
16 | var backendExtensions = context.ExtensionManager.Create<IWindowsInstallerBackendExtension>(); | ||
17 | |||
18 | foreach (var extension in backendExtensions) | ||
19 | { | ||
20 | extension.PreBackendBind(context); | ||
21 | } | ||
22 | |||
16 | var validator = Validator.CreateFromContext(context, "mergemod.cub"); | 23 | var validator = Validator.CreateFromContext(context, "mergemod.cub"); |
17 | 24 | ||
18 | var command = new BindDatabaseCommand(context, validator); | 25 | var command = new BindDatabaseCommand(context, backendExtensions, validator); |
19 | command.Execute(); | 26 | command.Execute(); |
20 | 27 | ||
21 | return new BindResult(command.FileTransfers, command.ContentFilePaths); | 28 | var result = new BindResult(command.FileTransfers, command.ContentFilePaths); |
29 | |||
30 | foreach (var extension in backendExtensions) | ||
31 | { | ||
32 | extension.PostBackendBind(result); | ||
33 | } | ||
34 | |||
35 | return result; | ||
22 | } | 36 | } |
23 | 37 | ||
24 | public bool Inscribe(IInscribeContext context) | 38 | public bool Inscribe(IInscribeContext context) |