项目作者: ivan-sincek

项目描述 :
Uninstall a specific or all MSI products.
高级语言: PowerShell
项目地址: git://github.com/ivan-sincek/uninstall-msi-products.git
创建时间: 2020-03-31T23:30:57Z
项目社区:https://github.com/ivan-sincek/uninstall-msi-products

开源协议:MIT License

下载


Uninstall MSI Products

Uninstall a specific or all MSI products.

When uninstalling all products, you will be prompted to confirm your choice but the process itself will be automatic and hidden.

Some products require administrative privileges.

Tested with PowerShell v5.1.18362.752 on Windows 10 Enterprise OS (64-bit).

Made for educational purposes. I hope it will help!

How to Run

Open the PowerShell from \src\ and run the commands shown below.

Set the execution policy:

  1. Set-ExecutionPolicy Unrestricted

Run the script:

  1. .\uninstall_msi_products.ps1

Or, run the following command from either PowerShell or Command Prompt:

  1. PowerShell -ExecutionPolicy Unrestricted -File .\uninstall_msi_products.ps1

To run the PowerShell encoded command, run the following command from either PowerShell or Command Prompt (minified script):

  1. PowerShell -ExecutionPolicy Unrestricted -EncodedCommand ZgB1AG4AYwB0AGkAbwBuACAAVQAgACgAJABtACwAIAAkAGwAKQAgAHsAIABpAGYAIAAoACQAbQAgAC0AZQBxACAAIgBvAG4AZQAiACkAIAB7ACAAJABnACAAPQAgACQAKABSAGUAYQBkAC0ASABvAHMAdAAgAC0AUAByAG8AbQBwAHQAIAAiAEUAbgB0AGUAcgAgAGkAZABlAG4AdABpAGYAeQBpAG4AZwAgAG4AdQBtAGIAZQByACIAKQAuAFQAcgBpAG0AKAApADsAIABXAHIAaQB0AGUALQBIAG8AcwB0ACAAIgAiADsAIABpAGYAIAAoACQAZwAuAEwAZQBuAGcAdABoACAALQBsAHQAIAAxACkAIAB7ACAAVwByAGkAdABlAC0ASABvAHMAdAAgACIASQBkAGUAbgB0AGkAZgB5AGkAbgBnACAAbgB1AG0AYgBlAHIAIABpAHMAIAByAGUAcQB1AGkAcgBlAGQAIgA7ACAAfQAgAGUAbABzAGUAIAB7ACAAJABlACAAPQAgACQAZgBhAGwAcwBlADsAIABmAG8AcgBlAGEAYwBoACAAKAAkAHAAIABpAG4AIAAkAGwAKQAgAHsAIABpAGYAIAAoACQAcAAuAEkAZABlAG4AdABpAGYAeQBpAG4AZwBOAHUAbQBiAGUAcgAgAC0AZQBxACAAJABnACkAIAB7ACAAJABlACAAPQAgACQAdAByAHUAZQA7ACAAYgByAGUAYQBrADsAIAB9ACAAfQAgAGkAZgAgACgAJABlACkAIAB7ACAAdAByAHkAIAB7ACAAUwB0AGEAcgB0AC0AUAByAG8AYwBlAHMAcwAgAC0ARgBpAGwAZQBQAGEAdABoACAAIgBtAHMAaQBlAHgAZQBjAC4AZQB4AGUAIgAgAC0AQQByAGcAdQBtAGUAbgB0AEwAaQBzAHQAIAAiAC8AeAAgAGAAIgAkACgAJABnACkAYAAiACIAIAAtAE4AbwBOAGUAdwBXAGkAbgBkAG8AdwA7ACAAVwByAGkAdABlAC0ASABvAHMAdAAgACIAWQBvAHUAIABzAGgAbwB1AGwAZAAgAG4AbwB3ACAAYgBlACAAYQBiAGwAZQAgAHQAbwAgAHMAZQBlACAAYQBuACAAdQBuAGkAbgBzAHQAYQBsAGwAIAB3AGkAbgBkAG8AdwAuAC4ALgAiADsAIAB9ACAAYwBhAHQAYwBoACAAewAgAFcAcgBpAHQAZQAtAEgAbwBzAHQAIAAkAF8ALgBFAHgAYwBlAHAAdABpAG8AbgA7ACAAfQAgAH0AIABlAGwAcwBlACAAewAgAFcAcgBpAHQAZQAtAEgAbwBzAHQAIAAiAFAAcgBvAGQAdQBjAHQAIABoAGEAcwAgAG4AbwB0ACAAYgBlAGUAbgAgAGYAbwB1AG4AZAAiADsAIAB9ACAAfQAgAH0AIABlAGwAcwBlAGkAZgAgACgAJABtACAALQBlAHEAIAAiAGEAbABsACIAKQAgAHsAIAB0AHIAeQAgAHsAIABmAG8AcgBlAGEAYwBoACAAKAAkAHAAIABpAG4AIAAkAGwAKQAgAHsAIABTAHQAYQByAHQALQBQAHIAbwBjAGUAcwBzACAALQBGAGkAbABlAFAAYQB0AGgAIAAiAG0AcwBpAGUAeABlAGMALgBlAHgAZQAiACAALQBBAHIAZwB1AG0AZQBuAHQATABpAHMAdAAgACIALwB4ACAAYAAiACQAKAAkAHAALgBJAGQAZQBuAHQAaQBmAHkAaQBuAGcATgB1AG0AYgBlAHIAKQBgACIAIAAvAHEAbgAgAC8AbgBvAHIAZQBzAHQAYQByAHQAIgAgAC0ATgBvAE4AZQB3AFcAaQBuAGQAbwB3ADsAIAB9ACAAVwByAGkAdABlAC0ASABvAHMAdAAgACIAVQBuAGkAbgBzAHQAYQBsAGwAYQB0AGkAbwBuACAAYwBvAG0AcABsAGUAdABlAGQAIABzAHUAYwBjAGUAcwBzAGYAdQBsAGwAeQAiADsAIAB9ACAAYwBhAHQAYwBoACAAewAgAFcAcgBpAHQAZQAtAEgAbwBzAHQAIAAkAF8ALgBFAHgAYwBlAHAAdABpAG8AbgA7ACAAfQAgAH0AIAB9ACAAJABwAHMAIAA9ACAAJABuAHUAbABsADsAIAB0AHIAeQAgAHsAIABXAHIAaQB0AGUALQBIAG8AcwB0ACAAIgBGAGUAdABjAGgAaQBuAGcAIAB0AGgAZQAgAGwAaQBzAHQAIABvAGYAIABNAFMASQAgAHAAcgBvAGQAdQBjAHQAcwAsACAAdABoAGkAcwAgAG0AYQB5ACAAdABhAGsAZQAgAGEAIAB3AGgAaQBsAGUALgAuAC4AIgA7ACAAJABwAHMAIAA9ACAARwBlAHQALQBXAG0AaQBPAGIAagBlAGMAdAAgAC0AQwBsAGEAcwBzACAAVwBpAG4AMwAyAF8AUAByAG8AZAB1AGMAdAA7ACAAaQBmACAAKAAkACgAJABwAHMAIAB8ACAATQBlAGEAcwB1AHIAZQApAC4AQwBvAHUAbgB0ACAALQBsAHQAIAAxACkAIAB7ACAAVwByAGkAdABlAC0ASABvAHMAdAAgACIAIgA7ACAAVwByAGkAdABlAC0ASABvAHMAdAAgACIAYABuAGAAbgBOAG8AIABpAG4AcwB0AGEAbABsAGUAZAAgAHAAcgBvAGQAdQBjAHQAcwAgAHcAZQByAGUAIABmAG8AdQBuAGQAIgA7ACAAfQAgAGUAbABzAGUAIAB7ACAAJABwAHMAIAB8ACAAUwBvAHIAdAAtAE8AYgBqAGUAYwB0ACAALQBQAHIAbwBwAGUAcgB0AHkAIABWAGUAbgBkAG8AcgAsACAATgBhAG0AZQAsACAAVgBlAHIAcwBpAG8AbgAgAHwAIABGAG8AcgBtAGEAdAAtAEwAaQBzAHQAIAAtAFAAcgBvAHAAZQByAHQAeQAgAEkAZABlAG4AdABpAGYAeQBpAG4AZwBOAHUAbQBiAGUAcgAsACAATgBhAG0AZQAsACAAVgBlAHIAcwBpAG8AbgAsACAAVgBlAG4AZABvAHIALAAgAEwAbwBjAGEAbABQAGEAYwBrAGEAZwBlACwAIABQAGEAYwBrAGEAZwBlAE4AYQBtAGUAOwAgAFcAcgBpAHQAZQAtAEgAbwBzAHQAIAAiAFsAMQBdACAAWwBQAHIAbwBtAHAAdABdACAAVQBuAGkAbgBzAHQAYQBsAGwAIABPAG4AZQAgAGAAbgBbADIAXQAgAFsAUwBpAGwAZQBuAHQAXQAgAFUAbgBpAG4AcwB0AGEAbABsACAAQQBsAGwAIABgAG4ALQAtAC0ALQAtAC0ALQAtAC0ALQAtAC0ALQAtAC0ALQAtAC0ALQAtAC0ALQAtAC0ALQAtAC0AIgA7ACAAJABjACAAPQAgACQAKABSAGUAYQBkAC0ASABvAHMAdAAgAC0AUAByAG8AbQBwAHQAIAAiAFkAbwB1AHIAIABjAGgAbwBpAGMAZQAiACkALgBUAHIAaQBtACgAKQA7ACAAVwByAGkAdABlAC0ASABvAHMAdAAgACIAIgA7ACAAaQBmACAAKAAkAGMAIAAtAGUAcQAgACIAMQAiACkAIAB7ACAAVQAgAC0ATQAgACIAbwBuAGUAIgAgAC0ATAAgACQAcABzADsAIAB9ACAAZQBsAHMAZQBpAGYAIAAoACQAYwAgAC0AZQBxACAAIgAyACIAKQAgAHsAIAAkAGMAZgAgAD0AIAAkACgAUgBlAGEAZAAtAEgAbwBzAHQAIAAtAFAAcgBvAG0AcAB0ACAAIgBDAG8AbgBmAGkAcgBtACAAKAB5AGUAcwApACIAKQAuAFQAcgBpAG0AKAApADsAIABpAGYAIAAoACQAYwBmACAALQBlAHEAIAAiAHkAZQBzACIAKQAgAHsAIABXAHIAaQB0AGUALQBIAG8AcwB0ACAAIgAiADsAIABVACAALQBNACAAIgBhAGwAbAAiACAALQBMACAAJABwAHMAOwAgAH0AIAB9ACAAZQBsAHMAZQAgAHsAIABXAHIAaQB0AGUALQBIAG8AcwB0ACAAIgBJAG4AdgBhAGwAaQBkACAAYwBoAG8AaQBjAGUAIgA7ACAAfQAgAH0AIAB9ACAAYwBhAHQAYwBoACAAewAgAFcAcgBpAHQAZQAtAEgAbwBzAHQAIAAkAF8ALgBFAHgAYwBlAHAAdABpAG8AbgAuAEkAbgBuAGUAcgBFAHgAYwBlAHAAdABpAG8AbgAuAE0AZQBzAHMAYQBnAGUAOwAgAH0AIABmAGkAbgBhAGwAbAB5ACAAewAgAGkAZgAgACgAJABwAHMAIAAtAG4AZQAgACQAbgB1AGwAbAApACAAewAgACQAcABzAC4ARABpAHMAcABvAHMAZQAoACkAOwAgAH0AIAB9AA0ACgA=

To generate a PowerShell encoded command from a PowerShell script, run the following PowerShell command:

  1. [Convert]::ToBase64String([Text.Encoding]::Unicode.GetBytes([IO.File]::ReadAllText($script)))

To decode a PowerShell encoded command, run the following PowerShell command:

  1. [Text.Encoding]::Unicode.GetString([Convert]::FromBase64String($command))

Images

Uninstall

Figure 1 - Uninstall