diff --git a/README.md b/README.md index 20cec9f..cefee5b 100644 --- a/README.md +++ b/README.md @@ -1,43 +1,43 @@ # InstaSoft Office Tool -**Belso hasznalatu Office telepito varazslo az InstaSoft Informatikai Zrt. ugyfelei szamara.** +**Belső használatú Office telepítő varázsló az InstaSoft Informatikai Zrt. ügyfelei számára.** -Microsoft Office 2019 / 2021 / 2024 telepites, eltavolitas es licenc-kezeles egyetlen alkalmazasbol. +Microsoft Office 2019 / 2021 / 2024 telepítés, eltávolítás és licenc-kezelés egyetlen alkalmazásból. --- -## Funkcionalitas +## Funkcionalitás -### Office telepites (varazslo) +### Office telepítés (varázsló) -1. **Verzio valasztas** — Office 2024, 2021 vagy 2019 -2. **Kiadas valasztas** — Standard, Professional Plus, Otthoni es kisvallalati verzio -3. **Beallitasok** — architektura (64/32-bit), nyelv, alkalmazasok kizarasa -4. **Termekkulcs** — opcionalis, ha megadja az ugyfei, automatikusan aktivalodik -5. **Osszegzes** — generalt ODT XML megtekintese es mentese -6. **Meglevo Office ellenorzes** — telepites elott felkinaija a regi verzio eltavolatasat -7. **Telepites** — ODT automatikus letoltese es futtatasa -8. **Telepites utan** — aktivaias lehetoseg + Word/Excel/PowerPoint/Outlook inditas +1. **Verzió választás** — Office 2024, 2021 vagy 2019 +2. **Kiadás választás** — Standard, Professional Plus, Otthoni és kisvállalati verzió +3. **Beállítások** — architektúra (64/32-bit), nyelv, alkalmazások kizárása +4. **Termékkulcs** — opcionális, ha megadja az ügyfél, automatikusan aktiválódik +5. **Összegzés** — generált ODT XML megtekintése és mentése +6. **Meglévő Office ellenőrzés** — telepítés előtt felkínálja a régi verzió eltávolítását +7. **Telepítés** — ODT automatikus letöltése és futtatása +8. **Telepítés után** — aktiválás lehetőség + Word/Excel/PowerPoint/Outlook indítás -### Office eltavolitas +### Office eltávolítás -- Registry-bol detektalja a telepitett Office verziokat (Click-to-Run + MSI) -- Szelektiv eltavolitas: minden termek kulon kivalaszthato +- Registry-ból detektálja a telepített Office verziókat (Click-to-Run + MSI) +- Szelektív eltávolítás: minden termék külön kiválasztható - Click-to-Run: ODT `setup.exe /configure remove.xml` (specifikus Product ID-vel) - MSI: `msiexec /x {GUID} /qb` -- Opcionalis licenc-adatbazis tisztitas (ospp.vbs /unpkey) +- Opcionális licenc-adatbázis tisztítás (ospp.vbs /unpkey) -### Licenc-kezeles +### Licenc-kezelés -- `ospp.vbs /dstatus` — licenc allapot lekerdezese -- Minden talalt kulcs kulon kartyakon jelenik meg -- **Aktivalas** gomb: termekkulcs bekeresi dialog → `/inpkey` → `/act` -- **Eltavolitas** gomb: kulon kulcsonkent `/unpkey` -- Osszes kulcs eltavolitasa (2+ kulcs eseten) +- `ospp.vbs /dstatus` — licenc állapot lekérdezése +- Minden talált kulcs külön kártyákon jelenik meg +- **Aktiválás** gomb: termékkulcs bekérési dialóg → `/inpkey` → `/act` +- **Eltávolítás** gomb: külön kulcsonként `/unpkey` +- Összes kulcs eltávolítása (2+ kulcs esetén) --- -## Technikai reszletek +## Technikai részletek ### Platform @@ -45,44 +45,44 @@ Microsoft Office 2019 / 2021 / 2024 telepites, eltavolitas es licenc-kezeles egy |---|---| | **Keretrendszer** | WPF .NET Framework 4.8 | | **Nyelv** | C# (SDK-style csproj) | -| **Cel platform** | Windows 7 SP1+ (.NET 4.8 szukseges) | +| **Cél platform** | Windows 7 SP1+ (.NET 4.8 szükséges) | | **Build** | `dotnet build -c Release` (.NET 8 SDK) | | **Kimenet** | `bin\Release\net48\InstaSoftOfficeTool.exe` | -| **Merret** | ~25 KB (egyetlen exe, nem kell telepiteni) | -| **Jogosultsag** | Administrator (UAC manifest) | +| **Méret** | ~25 KB (egyetlen exe, nem kell telepíteni) | +| **Jogosultság** | Administrator (UAC manifest) | ### Design -- **Fluent Design** vilagos tema (Windows 11 stilus) +- **Fluent Design** világos téma (Windows 11 stílus) - Segoe UI Variable font (fallback: Segoe UI) -- Lekerekitett sarkok, kartyak arnyekkal, accent szin: `#0078D4` -- Sajat ConfirmDialog es ProductKeyDialog (nem Windows MessageBox) -- 800x550 px fix ablakmerret +- Lekerekített sarkok, kártyák árnyékkal, accent szín: `#0078D4` +- Saját ConfirmDialog és ProductKeyDialog (nem Windows MessageBox) +- 800x550 px fix ablakméret ### ODT (Office Deployment Tool) -- Automatikus letoltes: `https://officecdn.microsoft.com/pr/wsus/setup.exe` -- Letoltott fajl helye: `%TEMP%\InstaSoftODT\setup.exe` -- Ha mar letezik es >1MB, ujra nem tolti le -- XML generalas az `OdtXmlGenerator` osztalyban +- Automatikus letöltés: `https://officecdn.microsoft.com/pr/wsus/setup.exe` +- Letöltött fájl helye: `%TEMP%\InstaSoftODT\setup.exe` +- Ha már létezik és >1MB, újra nem tölti le +- XML generálás az `OdtXmlGenerator` osztályban -### Tamogatott Office termekek +### Támogatott Office termékek -| Evjarat | Kiadas | Product ID | Channel | +| Évjárat | Kiadás | Product ID | Channel | |---------|--------|------------|---------| | 2024 | Standard | Standard2024Volume | PerpetualVL2024 | | 2024 | Professional Plus | ProPlus2024Volume | PerpetualVL2024 | -| 2024 | Otthoni es kisvallalati | HomeBusiness2024Retail | Current | +| 2024 | Otthoni és kisvállalati | HomeBusiness2024Retail | Current | | 2021 | Standard | Standard2021Volume | PerpetualVL2021 | | 2021 | Professional Plus | ProPlus2021Volume | PerpetualVL2021 | -| 2021 | Otthoni es kisvallalati | HomeBusiness2021Retail | Current | +| 2021 | Otthoni és kisvállalati | HomeBusiness2021Retail | Current | | 2019 | Standard | Standard2019Volume | PerpetualVL2019 | | 2019 | Professional Plus | ProPlus2019Volume | PerpetualVL2019 | -| 2019 | Otthoni es kisvallalati | HomeBusiness2019Retail | Current | +| 2019 | Otthoni és kisvállalati | HomeBusiness2019Retail | Current | -### Alkalmazas kizarasi szabalyok +### Alkalmazás kizárási szabályok -| Alkalmazas | Elerheto kiadasok | Alapertelmezett | +| Alkalmazás | Elérhető kiadások | Alapértelmezett | |---|---|---| | Word, Excel, PowerPoint, Outlook, OneNote | Mind | Bekapcsolva | | Access | Csak Professional Plus | Bekapcsolva | @@ -90,74 +90,74 @@ Microsoft Office 2019 / 2021 / 2024 telepites, eltavolitas es licenc-kezeles egy | Teams | Mind | Kikapcsolva | | Skype for Business | Mind | Kikapcsolva | -### ospp.vbs kereses +### ospp.vbs keresés -A program az alabbi helyeken keresi az `ospp.vbs` fajlt: +A program az alábbi helyeken keresi az `ospp.vbs` fájlt: 1. `C:\Program Files\Microsoft Office\root\Office16\OSPP.VBS` (Click-to-Run) 2. `C:\Program Files (x86)\Microsoft Office\root\Office16\OSPP.VBS` 3. `C:\Program Files\Microsoft Office\Office16\ospp.vbs` (MSI) 4. `C:\Program Files (x86)\Microsoft Office\Office16\ospp.vbs` -5. Office15, Office14 valtozatok +5. Office15, Office14 változatok 6. Registry: `HKLM\SOFTWARE\Microsoft\Office\ClickToRun\Configuration\InstallationPath` --- -## Projekt struktura +## Projekt struktúra ``` InstaSoftOfficeTool/ -├── InstaSoftOfficeTool.csproj Projekt fajl (.NET Framework 4.8) -├── App.xaml / App.xaml.cs Alkalmazas belepesi pont -├── MainWindow.xaml / .xaml.cs Fo ablak, navigacio, wizard logika +├── InstaSoftOfficeTool.csproj Projekt fájl (.NET Framework 4.8) +├── App.xaml / App.xaml.cs Alkalmazás belépési pont +├── MainWindow.xaml / .xaml.cs Fő ablak, navigáció, wizard logika ├── app.manifest UAC requireAdministrator │ ├── Models/ -│ ├── OfficeVersion.cs Evjarat enum (2024, 2021, 2019) -│ ├── OfficeEdition.cs Kiadas adatok (ProductId, Channel) -│ ├── InstallConfig.cs Telepitesi konfig + nyelvek + alkalmazasok -│ └── InstalledOffice.cs Detektalt Office info +│ ├── OfficeVersion.cs Évjárat enum (2024, 2021, 2019) +│ ├── OfficeEdition.cs Kiadás adatok (ProductId, Channel) +│ ├── InstallConfig.cs Telepítési konfig + nyelvek + alkalmazások +│ └── InstalledOffice.cs Detektált Office info │ ├── Pages/ -│ ├── WelcomePage.xaml Udvoziod oldal (3 kartya-gomb) -│ ├── VersionPage.xaml Evjarat valasztas -│ ├── EditionPage.xaml Kiadas valasztas (dinamikus) -│ ├── ConfigPage.xaml Architektura, nyelv, alkalmazasok -│ ├── ProductKeyPage.xaml Termekkulcs bevitel (5x5 mezo) -│ ├── SummaryPage.xaml Osszegzes + XML preview -│ ├── PreInstallCheckPage.xaml Meglevo Office ellenorzes/eltavolitas -│ ├── ProgressPage.xaml Telepitesi folyamat + befejezs utan aktivalas/inditas -│ ├── RemovePage.xaml Onallo Office eltavolitas -│ ├── TroubleshootPage.xaml Licenc-kezeles (dstatus, aktivalas, unpkey) -│ ├── ConfirmDialog.xaml Sajat megerosito dialog (overlay) -│ └── ProductKeyDialog.xaml Termekkulcs bekero dialog (overlay) +│ ├── WelcomePage.xaml Üdvözlő oldal (3 kártya-gomb) +│ ├── VersionPage.xaml Évjárat választás +│ ├── EditionPage.xaml Kiadás választás (dinamikus) +│ ├── ConfigPage.xaml Architektúra, nyelv, alkalmazások +│ ├── ProductKeyPage.xaml Termékkulcs bevitel (5x5 mező) +│ ├── SummaryPage.xaml Összegzés + XML preview +│ ├── PreInstallCheckPage.xaml Meglévő Office ellenőrzés/eltávolítás +│ ├── ProgressPage.xaml Telepítési folyamat + befejezés után aktiválás/indítás +│ ├── RemovePage.xaml Önálló Office eltávolítás +│ ├── TroubleshootPage.xaml Licenc-kezelés (dstatus, aktiválás, unpkey) +│ ├── ConfirmDialog.xaml Saját megerősítő dialóg (overlay) +│ └── ProductKeyDialog.xaml Termékkulcs bekérő dialóg (overlay) │ ├── Services/ -│ ├── OdtXmlGenerator.cs ODT XML konfig generalas -│ ├── OdtDownloader.cs ODT letoltes (officecdn.microsoft.com) -│ ├── OfficeDetector.cs Telepitett Office detektalas (registry) -│ ├── LicenseManager.cs ospp.vbs kereses es futtatás (/dstatus, /inpkey, /act, /unpkey) -│ └── ProcessRunner.cs Kulso folyamat futtatas async +│ ├── OdtXmlGenerator.cs ODT XML konfig generálás +│ ├── OdtDownloader.cs ODT letöltés (officecdn.microsoft.com) +│ ├── OfficeDetector.cs Telepített Office detektálás (registry) +│ ├── LicenseManager.cs ospp.vbs keresés és futtatás (/dstatus, /inpkey, /act, /unpkey) +│ └── ProcessRunner.cs Külső folyamat futtatás async │ ├── Styles/ -│ ├── FluentTheme.xaml Szinek, brushok, globalis font +│ ├── FluentTheme.xaml Színek, brushok, globális font │ ├── ButtonStyles.xaml PrimaryButton, SecondaryButton, CardButton │ └── ControlStyles.xaml ComboBox, TextBox, CheckBox, RadioButton, ProgressBar │ └── Resources/ - └── app.ico Alkalmazas ikon + └── app.ico Alkalmazás ikon ``` --- ## Build -### Elofeltetel +### Előfeltétel - .NET 8 SDK (a `dotnet` parancshoz) -- Nincs szukseg Visual Studio-ra +- Nincs szükség Visual Studio-ra -### Forditas +### Fordítás ```bash cd C:\Projects\InstaSoftOfficeTool @@ -168,46 +168,46 @@ Kimenet: `bin\Release\net48\InstaSoftOfficeTool.exe` ### Fontos -- **Build elott be kell zarni a futó programot** — az exe zárolt, amíg fut -- Csak az `.exe` kell a futtatashoz, a `.pdb` es `.config` nem szukseges +- **Build előtt be kell zárni a futó programot** — az exe zárolt, amíg fut +- Csak az `.exe` kell a futtatáshoz, a `.pdb` és `.config` nem szükséges --- -## Terjesztes +## Terjesztés -### Kodalairás +### Kód aláírás -Az exe fajlt OV (Organization Validation) tanustvannyal kell alairni a SmartScreen figyelmeztetesek elkerulesehez. +Az exe fájlt OV (Organization Validation) tanúsítvánnyal kell aláírni a SmartScreen figyelmeztetések elkerüléséhez. ```bash signtool sign /f certificate.pfx /p PASSWORD /fd SHA256 /tr http://timestamp.digicert.com /td SHA256 InstaSoftOfficeTool.exe ``` -### Verziokezeles +### Verziókezelés -Verzioszam **3 helyen** kell frissiteni kiadaskor: +Verziószám **3 helyen** kell frissíteni kiadáskor: 1. `InstaSoftOfficeTool.csproj` — ``, ``, `` -2. `MainWindow.xaml` — jobb felso sarok `Text="v1.xx"` +2. `MainWindow.xaml` — jobb felső sarok `Text="v1.xx"` 3. Git tag: `git tag v1.xx && git push origin v1.xx` --- -## Verziotortenet +## Verziótörténet -| Verzio | Datum | Valtozasok | +| Verzió | Dátum | Változások | |--------|-------|------------| -| v1.01 | 2026-03-31 | Elso kiadas: wizard, eltavolitas, licenc-kezeles | -| v1.02 | 2026-03-31 | Licenc UI javitasok, ospp.vbs root/Office16 path | -| v1.03 | 2026-03-31 | Fluent ComboBox/CheckBox/TextBox stilusok | -| v1.04 | 2026-03-31 | Config layout (arch+nyelv egymas mellett), Skype default off | -| v1.05 | 2026-03-31 | Gomb szoveg kontraszt javitas (feher kek alapon) | -| v1.06 | 2026-03-31 | Termekkulcs paste javitas (DataObject.Pasting) | -| v1.07 | 2026-03-31 | Pre-install Office ellenorzes a telepites elott | -| v1.08 | 2026-03-31 | Sajat Fluent megerosito dialog (MessageBox helyett) | -| v1.09 | 2026-04-01 | ODT CDN letoltes fix, szelektiv C2R eltavolitas | -| v1.10 | 2026-04-02 | Aktivalas kulcs dialoggal, auto-refresh, Access korlatozas | -| v1.11 | 2026-04-02 | Teljes alkalmazas lista, kiadasfuggo elerhetseg | -| v1.13 | 2026-04-02 | Telepites utani aktivalas es app inditas | -| v1.14 | 2026-04-02 | Ablak merret visszaallitas Vissza gombnal | -| v1.16 | 2026-04-02 | PowerShell verzio torolve, flat projekt struktura | +| v1.01 | 2026-03-31 | Első kiadás: wizard, eltávolítás, licenc-kezelés | +| v1.02 | 2026-03-31 | Licenc UI javítások, ospp.vbs root/Office16 path | +| v1.03 | 2026-03-31 | Fluent ComboBox/CheckBox/TextBox stílusok | +| v1.04 | 2026-03-31 | Config layout (arch+nyelv egymás mellett), Skype default off | +| v1.05 | 2026-03-31 | Gomb szöveg kontraszt javítás (fehér kék alapon) | +| v1.06 | 2026-03-31 | Termékkulcs paste javítás (DataObject.Pasting) | +| v1.07 | 2026-03-31 | Pre-install Office ellenőrzés a telepítés előtt | +| v1.08 | 2026-03-31 | Saját Fluent megerősítő dialóg (MessageBox helyett) | +| v1.09 | 2026-04-01 | ODT CDN letöltés fix, szelektív C2R eltávolítás | +| v1.10 | 2026-04-02 | Aktiválás kulcs dialóggal, auto-refresh, Access korlátozás | +| v1.11 | 2026-04-02 | Teljes alkalmazás lista, kiadásfüggő elérhetőség | +| v1.13 | 2026-04-02 | Telepítés utáni aktiválás és app indítás | +| v1.14 | 2026-04-02 | Ablak méret visszaállítás Vissza gombnál | +| v1.16 | 2026-04-02 | Flat projekt struktúra |