Files
EFC-DESK-V2/Classes/AutoUpdateAppHelper.cs
2026-02-09 10:55:45 -07:00

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");
}
}
}