diff options
Diffstat (limited to '')
-rw-r--r-- | src/engine/userexperience.cpp | 87 |
1 files changed, 87 insertions, 0 deletions
diff --git a/src/engine/userexperience.cpp b/src/engine/userexperience.cpp index b42eb5a7..02c67fc5 100644 --- a/src/engine/userexperience.cpp +++ b/src/engine/userexperience.cpp | |||
@@ -610,6 +610,93 @@ LExit: | |||
610 | return hr; | 610 | return hr; |
611 | } | 611 | } |
612 | 612 | ||
613 | EXTERN_C BAAPI UserExperienceOnCacheContainerOrPayloadVerifyBegin( | ||
614 | __in BURN_USER_EXPERIENCE* pUserExperience, | ||
615 | __in_z_opt LPCWSTR wzPackageOrContainerId, | ||
616 | __in_z_opt LPCWSTR wzPayloadId | ||
617 | ) | ||
618 | { | ||
619 | HRESULT hr = S_OK; | ||
620 | BA_ONCACHECONTAINERORPAYLOADVERIFYBEGIN_ARGS args = { }; | ||
621 | BA_ONCACHECONTAINERORPAYLOADVERIFYBEGIN_RESULTS results = { }; | ||
622 | |||
623 | args.cbSize = sizeof(args); | ||
624 | args.wzPackageOrContainerId = wzPackageOrContainerId; | ||
625 | args.wzPayloadId = wzPayloadId; | ||
626 | |||
627 | results.cbSize = sizeof(results); | ||
628 | |||
629 | hr = SendBAMessage(pUserExperience, BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHECONTAINERORPAYLOADVERIFYBEGIN, &args, &results); | ||
630 | ExitOnFailure(hr, "BA OnCacheContainerOrPayloadVerifyBegin failed."); | ||
631 | |||
632 | if (results.fCancel) | ||
633 | { | ||
634 | hr = HRESULT_FROM_WIN32(ERROR_INSTALL_USEREXIT); | ||
635 | } | ||
636 | |||
637 | LExit: | ||
638 | return hr; | ||
639 | } | ||
640 | |||
641 | EXTERN_C BAAPI UserExperienceOnCacheContainerOrPayloadVerifyComplete( | ||
642 | __in BURN_USER_EXPERIENCE* pUserExperience, | ||
643 | __in_z_opt LPCWSTR wzPackageOrContainerId, | ||
644 | __in_z_opt LPCWSTR wzPayloadId, | ||
645 | __in HRESULT hrStatus | ||
646 | ) | ||
647 | { | ||
648 | HRESULT hr = S_OK; | ||
649 | BA_ONCACHECONTAINERORPAYLOADVERIFYCOMPLETE_ARGS args = { }; | ||
650 | BA_ONCACHECONTAINERORPAYLOADVERIFYCOMPLETE_RESULTS results = { }; | ||
651 | |||
652 | args.cbSize = sizeof(args); | ||
653 | args.wzPackageOrContainerId = wzPackageOrContainerId; | ||
654 | args.wzPayloadId = wzPayloadId; | ||
655 | args.hrStatus = hrStatus; | ||
656 | |||
657 | results.cbSize = sizeof(results); | ||
658 | |||
659 | hr = SendBAMessage(pUserExperience, BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHECONTAINERORPAYLOADVERIFYCOMPLETE, &args, &results); | ||
660 | ExitOnFailure(hr, "BA OnCacheContainerOrPayloadVerifyComplete failed."); | ||
661 | |||
662 | LExit: | ||
663 | return hr; | ||
664 | } | ||
665 | |||
666 | EXTERN_C BAAPI UserExperienceOnCacheContainerOrPayloadVerifyProgress( | ||
667 | __in BURN_USER_EXPERIENCE* pUserExperience, | ||
668 | __in_z_opt LPCWSTR wzPackageOrContainerId, | ||
669 | __in_z_opt LPCWSTR wzPayloadId, | ||
670 | __in DWORD64 dw64Progress, | ||
671 | __in DWORD64 dw64Total, | ||
672 | __in DWORD dwOverallPercentage | ||
673 | ) | ||
674 | { | ||
675 | HRESULT hr = S_OK; | ||
676 | BA_ONCACHECONTAINERORPAYLOADVERIFYPROGRESS_ARGS args = { }; | ||
677 | BA_ONCACHECONTAINERORPAYLOADVERIFYPROGRESS_RESULTS results = { }; | ||
678 | |||
679 | args.cbSize = sizeof(args); | ||
680 | args.wzPackageOrContainerId = wzPackageOrContainerId; | ||
681 | args.wzPayloadId = wzPayloadId; | ||
682 | args.dw64Progress = dw64Progress; | ||
683 | args.dw64Total = dw64Total; | ||
684 | args.dwOverallPercentage = dwOverallPercentage; | ||
685 | |||
686 | results.cbSize = sizeof(results); | ||
687 | |||
688 | hr = SendBAMessage(pUserExperience, BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHECONTAINERORPAYLOADVERIFYPROGRESS, &args, &results); | ||
689 | ExitOnFailure(hr, "BA OnCacheContainerOrPayloadVerifyProgress failed."); | ||
690 | |||
691 | if (results.fCancel) | ||
692 | { | ||
693 | hr = HRESULT_FROM_WIN32(ERROR_INSTALL_USEREXIT); | ||
694 | } | ||
695 | |||
696 | LExit: | ||
697 | return hr; | ||
698 | } | ||
699 | |||
613 | EXTERN_C BAAPI UserExperienceOnCachePackageBegin( | 700 | EXTERN_C BAAPI UserExperienceOnCachePackageBegin( |
614 | __in BURN_USER_EXPERIENCE* pUserExperience, | 701 | __in BURN_USER_EXPERIENCE* pUserExperience, |
615 | __in_z LPCWSTR wzPackageId, | 702 | __in_z LPCWSTR wzPackageId, |