mirror of
https://github.com/microsoft/PowerToys.git
synced 2026-04-07 19:57:07 +02:00
[ContextMenu]Update win11 msix menus if wrong version is detected (#37289)
* [ContextMenus]Update win11 msix menus if wrong version * Remove extra line in code
This commit is contained in:
@@ -10,6 +10,7 @@
|
|||||||
#include <winrt/Windows.Management.Deployment.h>
|
#include <winrt/Windows.Management.Deployment.h>
|
||||||
|
|
||||||
#include "../logger/logger.h"
|
#include "../logger/logger.h"
|
||||||
|
#include "../version/version.h"
|
||||||
|
|
||||||
namespace package {
|
namespace package {
|
||||||
inline BOOL IsWin11OrGreater()
|
inline BOOL IsWin11OrGreater()
|
||||||
@@ -47,10 +48,14 @@ namespace package {
|
|||||||
for (auto const& package : packageManager.FindPackagesForUser({}))
|
for (auto const& package : packageManager.FindPackagesForUser({}))
|
||||||
{
|
{
|
||||||
const auto& packageFullName = std::wstring{ package.Id().FullName() };
|
const auto& packageFullName = std::wstring{ package.Id().FullName() };
|
||||||
|
const auto& packageVersion = package.Id().Version();
|
||||||
|
|
||||||
if (packageFullName.contains(packageDisplayName))
|
if (packageFullName.contains(packageDisplayName))
|
||||||
{
|
{
|
||||||
return true;
|
if (packageVersion.Major == VERSION_MAJOR && packageVersion.Minor == VERSION_MINOR && packageVersion.Revision == VERSION_REVISION)
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -72,6 +77,7 @@ namespace package {
|
|||||||
// Declare use of an external location
|
// Declare use of an external location
|
||||||
AddPackageOptions options;
|
AddPackageOptions options;
|
||||||
options.ExternalLocationUri(externalUri);
|
options.ExternalLocationUri(externalUri);
|
||||||
|
options.ForceUpdateFromAnyVersion(true);
|
||||||
|
|
||||||
IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress> deploymentOperation = packageManager.AddPackageByUriAsync(packageUri, options);
|
IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress> deploymentOperation = packageManager.AddPackageByUriAsync(packageUri, options);
|
||||||
deploymentOperation.get();
|
deploymentOperation.get();
|
||||||
|
|||||||
Reference in New Issue
Block a user