diff --git a/Tools/MediaPortal.DeployTool/InstallationChecks/TvServerChecker.cs b/Tools/MediaPortal.DeployTool/InstallationChecks/TvServerChecker.cs index 5f445397c2e..a83e1511fd1 100644 --- a/Tools/MediaPortal.DeployTool/InstallationChecks/TvServerChecker.cs +++ b/Tools/MediaPortal.DeployTool/InstallationChecks/TvServerChecker.cs @@ -128,13 +128,16 @@ public CheckResult CheckStatus() if (InstallationProperties.Instance["InstallType"] == "download_only") { result.state = result.needsDownload == false ? CheckState.DOWNLOADED : CheckState.NOT_DOWNLOADED; - return result; } - - CheckResult already = Utils.CheckNSISUninstallString("MediaPortal TV Server", "MementoSection_SecServer"); - if (already.state != CheckState.NOT_INSTALLED) + else if (result.state != CheckState.VERSION_MISMATCH) { - result.state = CheckState.INSTALLED; + //If the TvServer uninstall is not going to be executed, then check if the client is installed. If yes, then force to uninstall TvSever first. + //Otherwise the client will unistall the new TvServer installation. + CheckResult resultClient = Utils.CheckNSISUninstallString("MediaPortal TV Server", "MementoSection_SecClient"); + if (resultClient.state == CheckState.VERSION_MISMATCH) + { + result.state = CheckState.VERSION_MISMATCH; + } } return result;