Office 2016 Standard és Professional Plus telepítése ISO letöltéssel (soft.direct), ISO csatolással és a Microsoft MSI telepítő indításával. A 2019/2021/2024 verziók továbbra is ODT-vel működnek. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
95 sor
3.3 KiB
C#
95 sor
3.3 KiB
C#
using System.Collections.Generic;
|
|
|
|
namespace InstaSoftOfficeTool.Models
|
|
{
|
|
public class InstallConfig
|
|
{
|
|
public OfficeVersion Version { get; set; }
|
|
public OfficeEdition Edition { get; set; }
|
|
public string Architecture { get; set; } = "64";
|
|
public string Language { get; set; } = "hu-hu";
|
|
public string ProductKey { get; set; }
|
|
public List<string> ExcludedApps { get; set; } = new List<string>();
|
|
|
|
public bool IsMsiInstall => Edition != null && Edition.IsMsiInstall;
|
|
|
|
public string GetIsoUrl()
|
|
{
|
|
return Edition?.GetIsoUrl(Architecture);
|
|
}
|
|
|
|
public string GetVersionDisplayName()
|
|
{
|
|
switch (Version)
|
|
{
|
|
case OfficeVersion.Office2024: return "Office 2024";
|
|
case OfficeVersion.Office2021: return "Office 2021";
|
|
case OfficeVersion.Office2019: return "Office 2019";
|
|
case OfficeVersion.Office2016: return "Office 2016";
|
|
default: return "";
|
|
}
|
|
}
|
|
|
|
public string GetLanguageDisplayName()
|
|
{
|
|
return LanguageList.GetDisplayName(Language);
|
|
}
|
|
}
|
|
|
|
public static class LanguageList
|
|
{
|
|
public static readonly (string Code, string Name)[] Languages = new[]
|
|
{
|
|
("hu-hu", "Magyar"),
|
|
("en-us", "English (US)"),
|
|
("de-de", "Deutsch"),
|
|
("fr-fr", "Fran\u00e7ais"),
|
|
("it-it", "Italiano"),
|
|
("es-es", "Espa\u00f1ol"),
|
|
("pt-pt", "Portugu\u00eas"),
|
|
("nl-nl", "Nederlands"),
|
|
("pl-pl", "Polski"),
|
|
("cs-cz", "\u010ce\u0161tina"),
|
|
("sk-sk", "Sloven\u010dina"),
|
|
("ro-ro", "Rom\u00e2n\u0103"),
|
|
("hr-hr", "Hrvatski"),
|
|
("sl-si", "Sloven\u0161\u010dina"),
|
|
("sr-latn-rs", "Srpski"),
|
|
("bg-bg", "\u0411\u044a\u043b\u0433\u0430\u0440\u0441\u043a\u0438"),
|
|
("uk-ua", "\u0423\u043a\u0440\u0430\u0457\u043d\u0441\u044c\u043a\u0430"),
|
|
("ru-ru", "\u0420\u0443\u0441\u0441\u043a\u0438\u0439"),
|
|
("tr-tr", "T\u00fcrk\u00e7e"),
|
|
("ja-jp", "\u65e5\u672c\u8a9e"),
|
|
("zh-cn", "\u4e2d\u6587 (\u7b80\u4f53)"),
|
|
("ko-kr", "\ud55c\uad6d\uc5b4"),
|
|
};
|
|
|
|
public static string GetDisplayName(string code)
|
|
{
|
|
foreach (var lang in Languages)
|
|
{
|
|
if (lang.Code == code) return lang.Name;
|
|
}
|
|
return code;
|
|
}
|
|
}
|
|
|
|
public static class ExcludableApps
|
|
{
|
|
// Id, DisplayName, DefaultChecked (true = telep\u00edt, false = kiz\u00e1r)
|
|
// MinEdition: "all", "standard+" (Standard \u00e9s ProPlus), "proplus" (csak ProPlus)
|
|
public static readonly (string Id, string DisplayName, bool DefaultChecked, string MinEdition)[] Apps = new[]
|
|
{
|
|
("Word", "Word", true, "all"),
|
|
("Excel", "Excel", true, "all"),
|
|
("PowerPoint", "PowerPoint", true, "all"),
|
|
("Outlook", "Outlook", true, "all"),
|
|
("OneNote", "OneNote", true, "all"),
|
|
("Access", "Access", true, "proplus"),
|
|
("Publisher", "Publisher", true, "standard+"),
|
|
("Teams", "Teams", false, "all"),
|
|
("Lync", "Skype for Business", false, "all"),
|
|
};
|
|
}
|
|
}
|