This shows you the differences between two versions of the page.
userspace:uninstall_one_or_more_versions_of_a_msi-package_-product [2014/10/28 10:09] mmarten |
userspace:uninstall_one_or_more_versions_of_a_msi-package_-product [2021/08/23 08:37] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Uninstall one or more versions of a msi-package/ | ||
- | //scripts and guide by [[marten-marcus@t-online.de | M.Marten]] 2014/10/27 18:18// | ||
- | |||
- | ==== Information ==== | ||
- | === deutsch === | ||
- | Dies ist ein Beispiel dafür, wie alle Versionen eines Programmes, die via msiexec installiert wurden mit einer einzigen Anweisung deinstalliert werden können.\\ | ||
- | Hierzu wird das von mir erstellte Tool " | ||
- | |||
- | Es ist nicht notwendig entsprechende Produkt GUIDs für die einzelnen Versionen zu kennen.\\ | ||
- | Es wird automatisch für jedes einzelne deinstallierte Produkt der ExitCode überprüft.\\ | ||
- | |||
- | Ein " | ||
- | |||
- | === english === | ||
- | This is an example of how all versions of a program that was installed via msiexec can be uninstalled with a single statement.\\ | ||
- | For this purpose, the tool I created " | ||
- | |||
- | It is not necessary to know the corresponding product guids for each version.\\ | ||
- | It is automatically checked for every single uninstalled the product exit code.\\ | ||
- | |||
- | A " | ||
- | |||
- | ==== Download ==== | ||
- | Ein Zip-File mit allen benötigten Dateien kann [[http:// | ||
- | |||
- | A zip file containing all necessary files can be downloaded [[http:// | ||
- | \\ | ||
- | \\ | ||
- | |||
- | ==== Tree ==== | ||
- | < | ||
- | CLIENT_DATA | ||
- | ├ delsub.ins | ||
- | ├ insert_uninstmsi.opsiinc | ||
- | ├ sections_uninstmsi.opsiinc | ||
- | ├ uninstall.ins | ||
- | └ UninstMsi.exe | ||
- | </ | ||
- | |||
- | ==== uninstall.ins ==== | ||
- | <code winst> | ||
- | ; Author Marcus Marten | ||
- | ; -------------------------- | ||
- | |||
- | [Initial] | ||
- | SetLogLevel=6 | ||
- | ExitOnError=false | ||
- | ScriptErrorMessages=true | ||
- | TraceMode=false | ||
- | StayOnTop=false | ||
- | |||
- | [Actions] | ||
- | requiredWinstVersion >= " | ||
- | |||
- | ;include the required UninstMsi Sections | ||
- | include_insert " | ||
- | |||
- | ShowBitmap " | ||
- | |||
- | if FileExists(" | ||
- | comment "start uninstall" | ||
- | sub " | ||
- | endif | ||
- | |||
- | </ | ||
- | |||
- | |||
- | ==== delsub.ins ==== | ||
- | <code winst> | ||
- | ; Author Marcus Marten | ||
- | ; -------------------------- | ||
- | |||
- | ; only for fully silent uninstall | ||
- | ;set $UninstMsi_Options$ = "/ | ||
- | |||
- | ; only for the testing without real uninstall | ||
- | ;set $UninstMsi_Options$ = "/ | ||
- | |||
- | |||
- | ; $UninstMsi_SearchString$ = the name of the product / products that you want to uninstall | ||
- | ; Use SQL wildcards ( " | ||
- | ; or if you do not know the exact product name. | ||
- | ; More information about using SQL wildcards under: http:// | ||
- | ; You can " | ||
- | |||
- | |||
- | Message " | ||
- | |||
- | set $UninstMsi_SearchString$ = " | ||
- | |||
- | ; start uninstall & exitcode check | ||
- | Sub_Run_UninstMsi | ||
- | |||
- | </ | ||