diff options
Diffstat (limited to '')
10 files changed, 89 insertions, 24 deletions
diff --git a/src/api/burn/WixToolset.BootstrapperApplicationApi/BootstrapperCommand.cs b/src/api/burn/WixToolset.BootstrapperApplicationApi/BootstrapperCommand.cs index 612e8ce9..795a40d4 100644 --- a/src/api/burn/WixToolset.BootstrapperApplicationApi/BootstrapperCommand.cs +++ b/src/api/burn/WixToolset.BootstrapperApplicationApi/BootstrapperCommand.cs | |||
| @@ -20,6 +20,7 @@ namespace WixToolset.BootstrapperApplicationApi | |||
| 20 | [MarshalAs(UnmanagedType.I4)] internal int cbSize; | 20 | [MarshalAs(UnmanagedType.I4)] internal int cbSize; |
| 21 | [MarshalAs(UnmanagedType.U4)] private readonly LaunchAction action; | 21 | [MarshalAs(UnmanagedType.U4)] private readonly LaunchAction action; |
| 22 | [MarshalAs(UnmanagedType.U4)] private readonly Display display; | 22 | [MarshalAs(UnmanagedType.U4)] private readonly Display display; |
| 23 | [MarshalAs(UnmanagedType.U4)] private readonly BundleScope scope; | ||
| 23 | private readonly IntPtr wzCommandLine; | 24 | private readonly IntPtr wzCommandLine; |
| 24 | [MarshalAs(UnmanagedType.I4)] private readonly int nCmdShow; | 25 | [MarshalAs(UnmanagedType.I4)] private readonly int nCmdShow; |
| 25 | [MarshalAs(UnmanagedType.U4)] private readonly ResumeType resume; | 26 | [MarshalAs(UnmanagedType.U4)] private readonly ResumeType resume; |
| @@ -39,6 +40,7 @@ namespace WixToolset.BootstrapperApplicationApi | |||
| 39 | return new BootstrapperCommand( | 40 | return new BootstrapperCommand( |
| 40 | this.action, | 41 | this.action, |
| 41 | this.display, | 42 | this.display, |
| 43 | this.scope, | ||
| 42 | Marshal.PtrToStringUni(this.wzCommandLine), | 44 | Marshal.PtrToStringUni(this.wzCommandLine), |
| 43 | this.nCmdShow, | 45 | this.nCmdShow, |
| 44 | this.resume, | 46 | this.resume, |
| @@ -62,6 +64,7 @@ namespace WixToolset.BootstrapperApplicationApi | |||
| 62 | public BootstrapperCommand( | 64 | public BootstrapperCommand( |
| 63 | LaunchAction action, | 65 | LaunchAction action, |
| 64 | Display display, | 66 | Display display, |
| 67 | BundleScope scope, | ||
| 65 | string commandLine, | 68 | string commandLine, |
| 66 | int cmdShow, | 69 | int cmdShow, |
| 67 | ResumeType resume, | 70 | ResumeType resume, |
| @@ -74,6 +77,7 @@ namespace WixToolset.BootstrapperApplicationApi | |||
| 74 | { | 77 | { |
| 75 | this.Action = action; | 78 | this.Action = action; |
| 76 | this.Display = display; | 79 | this.Display = display; |
| 80 | this.Scope = scope; | ||
| 77 | this.CommandLine = commandLine; | 81 | this.CommandLine = commandLine; |
| 78 | this.CmdShow = cmdShow; | 82 | this.CmdShow = cmdShow; |
| 79 | this.Resume = resume; | 83 | this.Resume = resume; |
| @@ -92,6 +96,9 @@ namespace WixToolset.BootstrapperApplicationApi | |||
| 92 | public Display Display { get; } | 96 | public Display Display { get; } |
| 93 | 97 | ||
| 94 | /// <inheritdoc/> | 98 | /// <inheritdoc/> |
| 99 | public BundleScope Scope { get; } | ||
| 100 | |||
| 101 | /// <inheritdoc/> | ||
| 95 | public string CommandLine { get; } | 102 | public string CommandLine { get; } |
| 96 | 103 | ||
| 97 | /// <inheritdoc/> | 104 | /// <inheritdoc/> |
diff --git a/src/api/burn/WixToolset.BootstrapperApplicationApi/Engine.cs b/src/api/burn/WixToolset.BootstrapperApplicationApi/Engine.cs index 25413790..82978b7d 100644 --- a/src/api/burn/WixToolset.BootstrapperApplicationApi/Engine.cs +++ b/src/api/burn/WixToolset.BootstrapperApplicationApi/Engine.cs | |||
| @@ -12,7 +12,7 @@ namespace WixToolset.BootstrapperApplicationApi | |||
| 12 | /// </summary> | 12 | /// </summary> |
| 13 | public sealed class Engine : IEngine | 13 | public sealed class Engine : IEngine |
| 14 | { | 14 | { |
| 15 | private IBootstrapperEngine engine; | 15 | private readonly IBootstrapperEngine engine; |
| 16 | 16 | ||
| 17 | internal Engine(IBootstrapperEngine engine) | 17 | internal Engine(IBootstrapperEngine engine) |
| 18 | { | 18 | { |
| @@ -24,8 +24,7 @@ namespace WixToolset.BootstrapperApplicationApi | |||
| 24 | { | 24 | { |
| 25 | get | 25 | get |
| 26 | { | 26 | { |
| 27 | int count; | 27 | this.engine.GetPackageCount(out var count); |
| 28 | this.engine.GetPackageCount(out count); | ||
| 29 | 28 | ||
| 30 | return count; | 29 | return count; |
| 31 | } | 30 | } |
| @@ -110,8 +109,7 @@ namespace WixToolset.BootstrapperApplicationApi | |||
| 110 | /// <inheritdoc/> | 109 | /// <inheritdoc/> |
| 111 | public bool EvaluateCondition(string condition) | 110 | public bool EvaluateCondition(string condition) |
| 112 | { | 111 | { |
| 113 | bool value; | 112 | this.engine.EvaluateCondition(condition, out var value); |
| 114 | this.engine.EvaluateCondition(condition, out value); | ||
| 115 | 113 | ||
| 116 | return value; | 114 | return value; |
| 117 | } | 115 | } |
| @@ -247,9 +245,9 @@ namespace WixToolset.BootstrapperApplicationApi | |||
| 247 | } | 245 | } |
| 248 | 246 | ||
| 249 | /// <inheritdoc/> | 247 | /// <inheritdoc/> |
| 250 | public void Plan(LaunchAction action) | 248 | public void Plan(LaunchAction action, BundleScope plannedScope) |
| 251 | { | 249 | { |
| 252 | this.engine.Plan(action); | 250 | this.engine.Plan(action, plannedScope); |
| 253 | } | 251 | } |
| 254 | 252 | ||
| 255 | /// <inheritdoc/> | 253 | /// <inheritdoc/> |
| @@ -327,16 +325,16 @@ namespace WixToolset.BootstrapperApplicationApi | |||
| 327 | /// <inheritdoc/> | 325 | /// <inheritdoc/> |
| 328 | public int SendEmbeddedError(int errorCode, string message, int uiHint) | 326 | public int SendEmbeddedError(int errorCode, string message, int uiHint) |
| 329 | { | 327 | { |
| 330 | int result = 0; | 328 | this.engine.SendEmbeddedError(errorCode, message, uiHint, out var result); |
| 331 | this.engine.SendEmbeddedError(errorCode, message, uiHint, out result); | 329 | |
| 332 | return result; | 330 | return result; |
| 333 | } | 331 | } |
| 334 | 332 | ||
| 335 | /// <inheritdoc/> | 333 | /// <inheritdoc/> |
| 336 | public int SendEmbeddedProgress(int progressPercentage, int overallPercentage) | 334 | public int SendEmbeddedProgress(int progressPercentage, int overallPercentage) |
| 337 | { | 335 | { |
| 338 | int result = 0; | 336 | this.engine.SendEmbeddedProgress(progressPercentage, overallPercentage, out var result); |
| 339 | this.engine.SendEmbeddedProgress(progressPercentage, overallPercentage, out result); | 337 | |
| 340 | return result; | 338 | return result; |
| 341 | } | 339 | } |
| 342 | 340 | ||
diff --git a/src/api/burn/WixToolset.BootstrapperApplicationApi/IBootstrapperCommand.cs b/src/api/burn/WixToolset.BootstrapperApplicationApi/IBootstrapperCommand.cs index a1f8bfe0..7a5a4cfd 100644 --- a/src/api/burn/WixToolset.BootstrapperApplicationApi/IBootstrapperCommand.cs +++ b/src/api/burn/WixToolset.BootstrapperApplicationApi/IBootstrapperCommand.cs | |||
| @@ -20,6 +20,11 @@ namespace WixToolset.BootstrapperApplicationApi | |||
| 20 | Display Display { get; } | 20 | Display Display { get; } |
| 21 | 21 | ||
| 22 | /// <summary> | 22 | /// <summary> |
| 23 | /// Gets the bundle scope if set at the command line. | ||
| 24 | /// </summary> | ||
| 25 | BundleScope Scope { get; } | ||
| 26 | |||
| 27 | /// <summary> | ||
| 23 | /// Gets the command line arguments. | 28 | /// Gets the command line arguments. |
| 24 | /// </summary> | 29 | /// </summary> |
| 25 | /// <returns> | 30 | /// <returns> |
diff --git a/src/api/burn/WixToolset.BootstrapperApplicationApi/IBootstrapperEngine.cs b/src/api/burn/WixToolset.BootstrapperApplicationApi/IBootstrapperEngine.cs index 13702757..9df57cd3 100644 --- a/src/api/burn/WixToolset.BootstrapperApplicationApi/IBootstrapperEngine.cs +++ b/src/api/burn/WixToolset.BootstrapperApplicationApi/IBootstrapperEngine.cs | |||
| @@ -178,10 +178,11 @@ namespace WixToolset.BootstrapperApplicationApi | |||
| 178 | ); | 178 | ); |
| 179 | 179 | ||
| 180 | /// <summary> | 180 | /// <summary> |
| 181 | /// See <see cref="IEngine.Plan(LaunchAction)"/>. | 181 | /// See <see cref="IEngine.Plan(LaunchAction, BundleScope)"/>. |
| 182 | /// </summary> | 182 | /// </summary> |
| 183 | void Plan( | 183 | void Plan( |
| 184 | [MarshalAs(UnmanagedType.U4)] LaunchAction action | 184 | [MarshalAs(UnmanagedType.U4)] LaunchAction action, |
| 185 | [MarshalAs(UnmanagedType.U4)] BundleScope plannedScope | ||
| 185 | ); | 186 | ); |
| 186 | 187 | ||
| 187 | /// <summary> | 188 | /// <summary> |
| @@ -344,6 +345,28 @@ namespace WixToolset.BootstrapperApplicationApi | |||
| 344 | } | 345 | } |
| 345 | 346 | ||
| 346 | /// <summary> | 347 | /// <summary> |
| 348 | /// The scope of the bundle when the chain contains per-user-or-machine or per-machone-or-user packages. | ||
| 349 | /// </summary> | ||
| 350 | public enum BundleScope | ||
| 351 | { | ||
| 352 | /// <summary> | ||
| 353 | /// Let Burn choose the scope. Per-user-or-machine packages will be | ||
| 354 | /// planned as per-machine packages. | ||
| 355 | /// </summary> | ||
| 356 | Default, | ||
| 357 | |||
| 358 | /// <summary> | ||
| 359 | /// Set per-machine scope for per-user-or-machine packages. | ||
| 360 | /// </summary> | ||
| 361 | PerMachine, | ||
| 362 | |||
| 363 | /// <summary> | ||
| 364 | /// Set per-user scope for per-user-or-machine packages. | ||
| 365 | /// </summary> | ||
| 366 | PerUser, | ||
| 367 | } | ||
| 368 | |||
| 369 | /// <summary> | ||
| 347 | /// The message log level. | 370 | /// The message log level. |
| 348 | /// </summary> | 371 | /// </summary> |
| 349 | public enum LogLevel | 372 | public enum LogLevel |
diff --git a/src/api/burn/WixToolset.BootstrapperApplicationApi/IEngine.cs b/src/api/burn/WixToolset.BootstrapperApplicationApi/IEngine.cs index 03ceed06..a763d741 100644 --- a/src/api/burn/WixToolset.BootstrapperApplicationApi/IEngine.cs +++ b/src/api/burn/WixToolset.BootstrapperApplicationApi/IEngine.cs | |||
| @@ -139,7 +139,8 @@ namespace WixToolset.BootstrapperApplicationApi | |||
| 139 | /// Determine the installation sequencing and costing. | 139 | /// Determine the installation sequencing and costing. |
| 140 | /// </summary> | 140 | /// </summary> |
| 141 | /// <param name="action">The action to perform when planning.</param> | 141 | /// <param name="action">The action to perform when planning.</param> |
| 142 | void Plan(LaunchAction action); | 142 | /// <param name="plannedScope">The bundle scope for per-user-or-machine packages.</param> |
| 143 | void Plan(LaunchAction action, BundleScope plannedScope); | ||
| 143 | 144 | ||
| 144 | /// <summary> | 145 | /// <summary> |
| 145 | /// Set the update information for a bundle. | 146 | /// Set the update information for a bundle. |
diff --git a/src/api/burn/balutil/BalBootstrapperEngine.cpp b/src/api/burn/balutil/BalBootstrapperEngine.cpp index 61e7e31b..14aa5c25 100644 --- a/src/api/burn/balutil/BalBootstrapperEngine.cpp +++ b/src/api/burn/balutil/BalBootstrapperEngine.cpp | |||
| @@ -1188,7 +1188,8 @@ public: // IBootstrapperEngine | |||
| 1188 | } | 1188 | } |
| 1189 | 1189 | ||
| 1190 | virtual STDMETHODIMP Plan( | 1190 | virtual STDMETHODIMP Plan( |
| 1191 | __in BOOTSTRAPPER_ACTION action | 1191 | __in BOOTSTRAPPER_ACTION action, |
| 1192 | __in BOOTSTRAPPER_SCOPE plannedScope | ||
| 1192 | ) | 1193 | ) |
| 1193 | { | 1194 | { |
| 1194 | HRESULT hr = S_OK; | 1195 | HRESULT hr = S_OK; |
| @@ -1199,17 +1200,21 @@ public: // IBootstrapperEngine | |||
| 1199 | PIPE_RPC_RESULT rpc = { }; | 1200 | PIPE_RPC_RESULT rpc = { }; |
| 1200 | 1201 | ||
| 1201 | // Init send structs. | 1202 | // Init send structs. |
| 1202 | args.dwApiVersion = WIX_5_BOOTSTRAPPER_APPLICATION_API_VERSION; | 1203 | args.dwApiVersion = WIX_7_BOOTSTRAPPER_APPLICATION_API_VERSION; |
| 1203 | args.action = action; | 1204 | args.action = action; |
| 1205 | args.plannedScope = plannedScope; | ||
| 1204 | 1206 | ||
| 1205 | results.dwApiVersion = WIX_5_BOOTSTRAPPER_APPLICATION_API_VERSION; | 1207 | results.dwApiVersion = WIX_7_BOOTSTRAPPER_APPLICATION_API_VERSION; |
| 1206 | 1208 | ||
| 1207 | // Send args. | 1209 | // Send args. |
| 1208 | hr = BuffWriteNumberToBuffer(&bufferArgs, args.dwApiVersion); | 1210 | hr = BuffWriteNumberToBuffer(&bufferArgs, args.dwApiVersion); |
| 1209 | ExitOnFailure(hr, "Failed to write API version of Plan args."); | 1211 | ExitOnFailure(hr, "Failed to write API version of Plan args."); |
| 1210 | 1212 | ||
| 1211 | hr = BuffWriteNumberToBuffer(&bufferArgs, static_cast<DWORD>(args.action)); | 1213 | hr = BuffWriteNumberToBuffer(&bufferArgs, static_cast<DWORD>(args.action)); |
| 1212 | ExitOnFailure(hr, "Failed to write parent window of Plan args."); | 1214 | ExitOnFailure(hr, "Failed to write action of Plan args."); |
| 1215 | |||
| 1216 | hr = BuffWriteNumberToBuffer(&bufferArgs, static_cast<DWORD>(args.plannedScope)); | ||
| 1217 | ExitOnFailure(hr, "Failed to write planned scope of Plan args."); | ||
| 1213 | 1218 | ||
| 1214 | // Send results. | 1219 | // Send results. |
| 1215 | hr = BuffWriteNumberToBuffer(&bufferResults, results.dwApiVersion); | 1220 | hr = BuffWriteNumberToBuffer(&bufferResults, results.dwApiVersion); |
diff --git a/src/api/burn/balutil/inc/BootstrapperApplicationBase.h b/src/api/burn/balutil/inc/BootstrapperApplicationBase.h index 80bfd361..41c151d9 100644 --- a/src/api/burn/balutil/inc/BootstrapperApplicationBase.h +++ b/src/api/burn/balutil/inc/BootstrapperApplicationBase.h | |||
| @@ -16,7 +16,7 @@ class CBootstrapperApplicationBase : public IBootstrapperApplication | |||
| 16 | public: // IUnknown | 16 | public: // IUnknown |
| 17 | virtual STDMETHODIMP QueryInterface( | 17 | virtual STDMETHODIMP QueryInterface( |
| 18 | __in REFIID riid, | 18 | __in REFIID riid, |
| 19 | __out LPVOID *ppvObject | 19 | __out LPVOID* ppvObject |
| 20 | ) | 20 | ) |
| 21 | { | 21 | { |
| 22 | if (!ppvObject) | 22 | if (!ppvObject) |
| @@ -478,12 +478,14 @@ public: // IBootstrapperApplication | |||
| 478 | __in DWORD dwCode, | 478 | __in DWORD dwCode, |
| 479 | __in_z LPCWSTR wzError, | 479 | __in_z LPCWSTR wzError, |
| 480 | __in DWORD dwUIHint, | 480 | __in DWORD dwUIHint, |
| 481 | __in DWORD /*cData*/, | 481 | __in DWORD cData, |
| 482 | __in_ecount_z_opt(cData) LPCWSTR* /*rgwzData*/, | 482 | __in_ecount_z_opt(cData) LPCWSTR* /*rgwzData*/, |
| 483 | __in int /*nRecommendation*/, | 483 | __in int /*nRecommendation*/, |
| 484 | __inout int* pResult | 484 | __inout int* pResult |
| 485 | ) | 485 | ) |
| 486 | { | 486 | { |
| 487 | UNREFERENCED_PARAMETER(cData); | ||
| 488 | |||
| 487 | BalRetryErrorOccurred(wzPackageId, dwCode); | 489 | BalRetryErrorOccurred(wzPackageId, dwCode); |
| 488 | 490 | ||
| 489 | if (BOOTSTRAPPER_DISPLAY_EMBEDDED == m_commandDisplay) | 491 | if (BOOTSTRAPPER_DISPLAY_EMBEDDED == m_commandDisplay) |
| @@ -781,12 +783,14 @@ public: // IBootstrapperApplication | |||
| 781 | __in INSTALLMESSAGE /*messageType*/, | 783 | __in INSTALLMESSAGE /*messageType*/, |
| 782 | __in DWORD /*dwUIHint*/, | 784 | __in DWORD /*dwUIHint*/, |
| 783 | __in_z LPCWSTR /*wzMessage*/, | 785 | __in_z LPCWSTR /*wzMessage*/, |
| 784 | __in DWORD /*cData*/, | 786 | __in DWORD cData, |
| 785 | __in_ecount_z_opt(cData) LPCWSTR* /*rgwzData*/, | 787 | __in_ecount_z_opt(cData) LPCWSTR* /*rgwzData*/, |
| 786 | __in int /*nRecommendation*/, | 788 | __in int /*nRecommendation*/, |
| 787 | __inout int* pResult | 789 | __inout int* pResult |
| 788 | ) | 790 | ) |
| 789 | { | 791 | { |
| 792 | UNREFERENCED_PARAMETER(cData); | ||
| 793 | |||
| 790 | if (CheckCanceled()) | 794 | if (CheckCanceled()) |
| 791 | { | 795 | { |
| 792 | *pResult = IDCANCEL; | 796 | *pResult = IDCANCEL; |
| @@ -797,13 +801,15 @@ public: // IBootstrapperApplication | |||
| 797 | 801 | ||
| 798 | virtual STDMETHODIMP OnExecuteFilesInUse( | 802 | virtual STDMETHODIMP OnExecuteFilesInUse( |
| 799 | __in_z LPCWSTR /*wzPackageId*/, | 803 | __in_z LPCWSTR /*wzPackageId*/, |
| 800 | __in DWORD /*cFiles*/, | 804 | __in DWORD cFiles, |
| 801 | __in_ecount_z(cFiles) LPCWSTR* /*rgwzFiles*/, | 805 | __in_ecount_z(cFiles) LPCWSTR* /*rgwzFiles*/, |
| 802 | __in int /*nRecommendation*/, | 806 | __in int /*nRecommendation*/, |
| 803 | __in BOOTSTRAPPER_FILES_IN_USE_TYPE /*source*/, | 807 | __in BOOTSTRAPPER_FILES_IN_USE_TYPE /*source*/, |
| 804 | __inout int* pResult | 808 | __inout int* pResult |
| 805 | ) | 809 | ) |
| 806 | { | 810 | { |
| 811 | UNREFERENCED_PARAMETER(cFiles); | ||
| 812 | |||
| 807 | if (CheckCanceled()) | 813 | if (CheckCanceled()) |
| 808 | { | 814 | { |
| 809 | *pResult = IDCANCEL; | 815 | *pResult = IDCANCEL; |
diff --git a/src/api/burn/balutil/inc/IBootstrapperEngine.h b/src/api/burn/balutil/inc/IBootstrapperEngine.h index 57fc9be9..ad6e6042 100644 --- a/src/api/burn/balutil/inc/IBootstrapperEngine.h +++ b/src/api/burn/balutil/inc/IBootstrapperEngine.h | |||
| @@ -108,7 +108,8 @@ DECLARE_INTERFACE_IID_(IBootstrapperEngine, IUnknown, "6480D616-27A0-44D7-905B-8 | |||
| 108 | ) = 0; | 108 | ) = 0; |
| 109 | 109 | ||
| 110 | STDMETHOD(Plan)( | 110 | STDMETHOD(Plan)( |
| 111 | __in BOOTSTRAPPER_ACTION action | 111 | __in BOOTSTRAPPER_ACTION action, |
| 112 | __in BOOTSTRAPPER_SCOPE plannedScope | ||
| 112 | ) = 0; | 113 | ) = 0; |
| 113 | 114 | ||
| 114 | STDMETHOD(Elevate)( | 115 | STDMETHOD(Elevate)( |
diff --git a/src/api/burn/inc/BootstrapperApplicationTypes.h b/src/api/burn/inc/BootstrapperApplicationTypes.h index 2ece1b7b..b430e04a 100644 --- a/src/api/burn/inc/BootstrapperApplicationTypes.h +++ b/src/api/burn/inc/BootstrapperApplicationTypes.h | |||
| @@ -10,6 +10,7 @@ extern "C" { | |||
| 10 | const LPCWSTR BOOTSTRAPPER_APPLICATION_COMMANDLINE_SWITCH_API_VERSION = L"burn.ba.apiver"; | 10 | const LPCWSTR BOOTSTRAPPER_APPLICATION_COMMANDLINE_SWITCH_API_VERSION = L"burn.ba.apiver"; |
| 11 | const LPCWSTR BOOTSTRAPPER_APPLICATION_COMMANDLINE_SWITCH_PIPE_NAME = L"burn.ba.pipe"; | 11 | const LPCWSTR BOOTSTRAPPER_APPLICATION_COMMANDLINE_SWITCH_PIPE_NAME = L"burn.ba.pipe"; |
| 12 | const DWORD WIX_5_BOOTSTRAPPER_APPLICATION_API_VERSION = 5; | 12 | const DWORD WIX_5_BOOTSTRAPPER_APPLICATION_API_VERSION = 5; |
| 13 | const DWORD WIX_7_BOOTSTRAPPER_APPLICATION_API_VERSION = 7; | ||
| 13 | 14 | ||
| 14 | enum BOOTSTRAPPER_DISPLAY | 15 | enum BOOTSTRAPPER_DISPLAY |
| 15 | { | 16 | { |
| @@ -27,6 +28,15 @@ enum BOOTSTRAPPER_REGISTRATION_TYPE | |||
| 27 | BOOTSTRAPPER_REGISTRATION_TYPE_FULL, | 28 | BOOTSTRAPPER_REGISTRATION_TYPE_FULL, |
| 28 | }; | 29 | }; |
| 29 | 30 | ||
| 31 | enum BOOTSTRAPPER_PACKAGE_SCOPE | ||
| 32 | { | ||
| 33 | BOOTSTRAPPER_PACKAGE_SCOPE_INVALID, | ||
| 34 | BOOTSTRAPPER_PACKAGE_SCOPE_PER_MACHINE, | ||
| 35 | BOOTSTRAPPER_PACKAGE_SCOPE_PER_MACHINE_OR_PER_USER, | ||
| 36 | BOOTSTRAPPER_PACKAGE_SCOPE_PER_USER_OR_PER_MACHINE, | ||
| 37 | BOOTSTRAPPER_PACKAGE_SCOPE_PER_USER, | ||
| 38 | }; | ||
| 39 | |||
| 30 | enum BOOTSTRAPPER_RESUME_TYPE | 40 | enum BOOTSTRAPPER_RESUME_TYPE |
| 31 | { | 41 | { |
| 32 | BOOTSTRAPPER_RESUME_TYPE_NONE, | 42 | BOOTSTRAPPER_RESUME_TYPE_NONE, |
| @@ -353,6 +363,7 @@ struct BOOTSTRAPPER_COMMAND | |||
| 353 | DWORD cbSize; | 363 | DWORD cbSize; |
| 354 | BOOTSTRAPPER_ACTION action; | 364 | BOOTSTRAPPER_ACTION action; |
| 355 | BOOTSTRAPPER_DISPLAY display; | 365 | BOOTSTRAPPER_DISPLAY display; |
| 366 | BOOTSTRAPPER_SCOPE commandLineScope; | ||
| 356 | 367 | ||
| 357 | LPWSTR wzCommandLine; | 368 | LPWSTR wzCommandLine; |
| 358 | INT32 nCmdShow; | 369 | INT32 nCmdShow; |
diff --git a/src/api/burn/inc/BootstrapperEngineTypes.h b/src/api/burn/inc/BootstrapperEngineTypes.h index f89238c0..6dced349 100644 --- a/src/api/burn/inc/BootstrapperEngineTypes.h +++ b/src/api/burn/inc/BootstrapperEngineTypes.h | |||
| @@ -30,6 +30,13 @@ enum BOOTSTRAPPER_ACTION | |||
| 30 | BOOTSTRAPPER_ACTION_UPDATE_REPLACE_EMBEDDED, | 30 | BOOTSTRAPPER_ACTION_UPDATE_REPLACE_EMBEDDED, |
| 31 | }; | 31 | }; |
| 32 | 32 | ||
| 33 | enum BOOTSTRAPPER_SCOPE | ||
| 34 | { | ||
| 35 | BOOTSTRAPPER_SCOPE_DEFAULT, | ||
| 36 | BOOTSTRAPPER_SCOPE_PER_MACHINE, | ||
| 37 | BOOTSTRAPPER_SCOPE_PER_USER, | ||
| 38 | }; | ||
| 39 | |||
| 33 | enum BOOTSTRAPPER_ACTION_STATE | 40 | enum BOOTSTRAPPER_ACTION_STATE |
| 34 | { | 41 | { |
| 35 | BOOTSTRAPPER_ACTION_STATE_NONE, | 42 | BOOTSTRAPPER_ACTION_STATE_NONE, |
| @@ -183,7 +190,7 @@ typedef struct _BAENGINE_ESCAPESTRING_RESULTS | |||
| 183 | { | 190 | { |
| 184 | DWORD dwApiVersion; | 191 | DWORD dwApiVersion; |
| 185 | LPWSTR wzOut; | 192 | LPWSTR wzOut; |
| 186 | // Should be initialized to the size of wzOut. | 193 | // Should be initialized to the count of wzOut. |
| 187 | DWORD cchOut; | 194 | DWORD cchOut; |
| 188 | } BAENGINE_ESCAPESTRING_RESULTS; | 195 | } BAENGINE_ESCAPESTRING_RESULTS; |
| 189 | 196 | ||
| @@ -306,6 +313,7 @@ typedef struct _BAENGINE_PLAN_ARGS | |||
| 306 | { | 313 | { |
| 307 | DWORD dwApiVersion; | 314 | DWORD dwApiVersion; |
| 308 | BOOTSTRAPPER_ACTION action; | 315 | BOOTSTRAPPER_ACTION action; |
| 316 | BOOTSTRAPPER_SCOPE plannedScope; | ||
| 309 | } BAENGINE_PLAN_ARGS; | 317 | } BAENGINE_PLAN_ARGS; |
| 310 | 318 | ||
| 311 | typedef struct _BAENGINE_PLAN_RESULTS | 319 | typedef struct _BAENGINE_PLAN_RESULTS |
