public void PerformTreatment() { int packageCount = 0; try { using (DismSession session = DismApi.OpenOnlineSession()) { DismAppxPackageCollection dismAppxPackages = DismApi.GetProvisionedAppxPackages(session); foreach (var package in dismAppxPackages) { try { DismApi.RemoveProvisionedAppxPackage(session, package.PackageName); logger.Log("Successfully deprovisioned {0}", package.DisplayName); } catch (DismRebootRequiredException ex) { logger.Log("Successfully deprovisioned {0}: {1}", package.DisplayName, ex.Message); } packageCount += 1; } } } catch (Exception ex) { logger.Log("An error occurred while deprovisioning packages: {0}", ex.Message); } if (packageCount <= 0) { logger.Log("No Windows Store packages were deprovisioned."); } }
public override bool ShouldPerformTreatment() { int packageCount = 0; try { using (DismSession session = DismApi.OpenOnlineSession()) { DismAppxPackageCollection dismAppxPackages = DismApi.GetProvisionedAppxPackages(session); foreach (var package in dismAppxPackages) { if (StoreApps.ShouldRemove(package.DisplayName)) { Logger.Log("Would deprovision {0}", package.DisplayName); packageCount += 1; } else { Logger.Log("Not deprovisioning {0}", package.DisplayName); } } } } catch { return(false); } if (packageCount > 0) { return(true); } return(false); }
public override bool PerformTreatment() { int removedPackageCount = 0; try { using (DismSession session = DismApi.OpenOnlineSession()) { DismAppxPackageCollection dismAppxPackages = DismApi.GetProvisionedAppxPackages(session); foreach (var package in dismAppxPackages) { try { if (StoreApps.ShouldRemove(package.DisplayName)) { DismApi.RemoveProvisionedAppxPackage(session, package.PackageName); Logger.Log("Successfully deprovisioned {0}", package.DisplayName); removedPackageCount += 1; } else { Logger.Log("Not deprovisioning {0}", package.DisplayName); } } catch (DismRebootRequiredException ex) { Logger.Log("Successfully deprovisioned {0}: {1}", package.DisplayName, ex.Message); removedPackageCount += 1; } } } } catch (Exception ex) { Logger.Log("An error occurred while deprovisioning packages: {0}", ex.Message); return(false); } if (removedPackageCount <= 0) { Logger.Log("No Windows Store packages were deprovisioned."); } return(true); }
public void GetProvisionedAppxPackagesSimple() { using (DismSession onlineSession = DismApi.OpenOnlineSession()) { DismAppxPackageCollection packages = DismApi.GetProvisionedAppxPackages(onlineSession); packages.ShouldNotBeNull(); foreach (DismAppxPackage package in packages) { package.Architecture.ShouldBeOneOf(Enum.GetValues(typeof(DismProcessorArchitecture)).Cast <DismProcessorArchitecture>().ToArray()); package.DisplayName.ShouldNotBeNullOrWhiteSpace(); package.InstallLocation.ShouldNotBeNullOrWhiteSpace(); package.PackageName.ShouldNotBeNullOrWhiteSpace(); package.PublisherId.ShouldNotBeNullOrWhiteSpace(); package.ResourceId.ShouldNotBeNullOrWhiteSpace(); package.Version.ShouldBeGreaterThan(Version.Parse("0.0.0.0")); } } }