From 5f01aa89fc0fce402d37f7911a71e01d6641748b Mon Sep 17 00:00:00 2001 From: Hitonabi Date: Sun, 26 Jul 2026 15:55:05 +0200 Subject: [PATCH] fix(deinstaller): er brauchte Adminrechte und hatte keine Commander: "Ich kann den worker uebrigens immernoch nicht deinstallieren." Der Screenshot zeigt ZWEI Dinge. Das erste ist erklaerbar: Es lief noch der ALTE uninstall.ps1 von der letzten Installation - Zeile 2 mit dem kaputten `if (-not $Force) { if ([System.Windows.Forms.MessageBox]...` . Meine Reparatur schreibt die Datei erst beim naechsten Installer-Lauf neu. Das zweite ist MEIN Fehler, und er haette auch die neue Fassung erwischt: Remove-Item : Das Element C:\Program Files\Rippy Worker\doc\LICENSE kann nicht entfernt werden: Der Zugriff auf den Pfad wurde verweigert. Der Standard-Zielordner liegt unter "C:\Program Files", und der gehoert nicht dem Benutzer. Die Installer-.exe ist mit -requireAdmin gebaut und fragt beim Start per UAC - der Deinstaller hatte nichts Vergleichbares. Er war damit im STANDARDFALL nutzlos, und mein `rd /s /q` waere genauso aufgelaufen. Jetzt erhoeht er sich selbst: Schreibprobe im Ordner, Admin-Abfrage, und nur wenn beides fehlt, ein Neustart per RunAs mit -Force (damit die Bestaetigung nicht zweimal kommt). GEMESSEN statt angenommen - wer den Worker ins eigene Profil installiert hat, bekommt gar keine UAC-Frage. An seinem echten Ordner gegengeprueft: schreibbar=False, istAdmin=False -> Entscheidung "erhoehen". Der erzeugte Deinstaller ist diesmal komplett nachgestellt worden: parst, und die Reihenfolge stimmt (Add-Type Zeile 7, MessageBox Zeile 10, Schreibprobe, Erhoehung, erst dann Loeschen). Co-Authored-By: Claude Opus 5 --- deploy/worker-windows/RippyWorkerSetup.exe | Bin 73728 -> 75776 bytes deploy/worker-windows/install-gui.ps1 | 39 +++++++++++++++++++++ deploy/worker-windows/install.ps1 | 27 ++++++++++++++ 3 files changed, 66 insertions(+) diff --git a/deploy/worker-windows/RippyWorkerSetup.exe b/deploy/worker-windows/RippyWorkerSetup.exe index 8014d3a002d3994be676432c2318d81185471537..3d1d74cd489a1d4a65db21b23c2100835ddb6ca9 100644 GIT binary patch delta 2090 zcmaJ?Uu+ab9NsMzO0lGX!M`cLUK`rl?xr>bNDWD^*8>hqIeThjg`|78b9+PgW-qg| zlorS}CPpI$EN9Z_lZih1)>wQXQPT(Gn=wB5fCOKB!$%W&@SEK`tiJ#_qpfUhCc0zF->9uK#G7hZ^si1D%I`juj&q-dsS&KWU7da8V%cMrtxc&&@KQy=Ql&{IBDI30yQ`nkdFHZ^W?8i!TwqpC zVI9u6ps-Y79QcZ=Tu};4G~#^ZNnS3K6P1A_C|`D5T8gC0=mL{VjC(kdqQOj1t%5d_ z)+8%~4UHYPM~~QJqhp6h$PpUqB-SUTvk3QYP&zv?oy%lr3R%sa-Uvh(NCgLQD1TGFh8D2?C=LeyU^BUqr_H?#T$j%TrDMfWhcue5# zOpH@Dq$Mt0f@><2Dw6RcGzz0q1wpAg2!~B`AgOhn3*=&=FnHnwP#7VqW$sgxIoGiO z_Yo>e2Ox?Tfy^i?5#UNBJTR}jRAh_ruOM8hq8TQeAcS>XIvxY@g?_|Vv%!7o7%lYU zVj%=ka+xl5brQxxe@zBOhSgI67gpX;71)}|m$KcKnpV6ml^iNC)oo=0B&AT)JkxkT z8ft7r`?e>DjqV!<>Ma+Ku~0Gsi7Qlc6coBdSGqbiSHw5%Rw3ar8ho$7N|EGh+0G+H zOT6az_8b>(uoONpoO{Zq9HdrtoIf`{euAk?Bqa=kLkXiHI~V4}Y~Zt}Ihu^Puaa#* ziK&62bW|XL)78n#G-!!HL9d4{Xd&4tG1nhlX{aT49~F>(6f(bvY-VvlQL!x2X{F1+ zChK@0OKgNtVm=`>ae)ScRw9puitC6cWr(6quG2>$st8%K^>vkzi^_=;fa)v2s6x49 z+e1;;k&kP~LgtlN7*Z`*LdI5@@5i-fp;U@A8;NvCR$6)y@?1^p3Y-{B&@_Y|DQhN3 z(wCtfrL62lL{9NQo|8qFX(FQa3TI4-TXTXc#i)3(am4r{OTcKBO^Y zMN$yG@ptrm<7#lEJ|9&nD^!_Dp#?%_&?5no3}wSeY;7v;(V%XRXC7{-DH?u^OwwWp za24HOt4w>=4MNMA7G+&gP2HWMS7$z}2xTvb1@RCIOVml1ubmcUS~D2 za1qKZ(m>h|AEixCf;mxG-nxY<76Yvup(v9O3(>?1i;~xLDj|tV@AoqEjG z_1$gepRY}s#*6z~n+@aWylFi5|6gM?jrUo85rasg6rggYy}`&0Z21AK-f$S3@kt% z2*7BDgo&5*_#%L+gF(VT)i0zcDhjhWFf#B=cjRO=nHpBw zpeBP%p9l8dL`5-XpncPsIT^dB^KmggHUt_WDF#vi0Txz_3?eWNkTy^R`VZt*C