46 lines
1.6 KiB
C#
46 lines
1.6 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Reflection;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace EFCDesk.Classes
|
|
{
|
|
public static class AutoUpdateAppHelper
|
|
{
|
|
public static void CheckForUpdatesManually()
|
|
{
|
|
Version? installedVersion = Assembly.GetExecutingAssembly().GetName().Version;
|
|
Version latestVersion = GetLatestVersionFromConfigFile();
|
|
|
|
if (installedVersion != null && latestVersion > installedVersion)
|
|
{
|
|
MessageBox.Show($"Hay una nueva versión disponible ({latestVersion}). " +
|
|
"Por favor, instálela desde su medio de almacenamiento.");
|
|
}
|
|
}
|
|
|
|
private static Version GetLatestVersionFromConfigFile()
|
|
{
|
|
// Leer de un archivo de configuración incluido en el USB/CD
|
|
string versionFile = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "latest_version.txt");
|
|
if (File.Exists(versionFile))
|
|
{
|
|
return new Version(File.ReadAllText(versionFile));
|
|
}
|
|
return Assembly.GetExecutingAssembly().GetName().Version ?? new Version(1, 0, 0, 0);
|
|
}
|
|
public static void LogInstallation()
|
|
{
|
|
string logPath = Path.Combine(Environment.GetFolderPath(
|
|
Environment.SpecialFolder.ApplicationData),
|
|
"EFCDeskv2", "install_log.txt");
|
|
|
|
File.AppendAllText(logPath,
|
|
$"Instalado: {DateTime.Now} | Versión: {Assembly.GetExecutingAssembly().GetName().Version}\n");
|
|
}
|
|
|
|
}
|
|
}
|