Jak utworzyć odświeżenie w czasie rzeczywistym menu Start systemu Windows 10

2

Z pomocą tego forum i stosu przepełnienia utworzyłem modułowy skrypt Powershell, który generuje menu Start i pasek zadań XML do użycia przez zasady grupy w systemie Windows 10 Pro v1703. Samodzielnie działa dobrze. Następnym krokiem jest uruchomienie tego po zainstalowaniu aplikacji i odpowiednie zaktualizowanie menu Start. W rezultacie muszę teraz znaleźć sposób na aktualizację kafelków / xml w czasie rzeczywistym bez ponownego uruchamiania.

Oto przebieg procesu po zainstalowaniu aplikacji, który powinien znajdować się w menu Start:

1) Skrypt wysyła zapytanie do użytkownika / komputera w celu zainstalowania aplikacji, aplikacji, skrótów itp. 2) Skrypt czyta listę grup i aplikacji z pliku konfiguracyjnego i wysyła zapytanie do zainstalowanych aplikacji (zapobiega pustym spacjom i znakom zapytania) 3) Skrypt Tworzy plik o nazwie menu start. xml i konwertuje stary na startmenuold.xml

4 *) Tutaj nie mogę znaleźć eleganckiego rozwiązania. Powinien teraz przeczytać nowy plik XML i zaktualizować menu Start, aby odzwierciedlić zmiany.

Mój problem polega na tym, że jedynym dostępnym dotychczas sposobem aktualizacji menu Start był get-process explorer.exe | zatrzymanie procesu, które jest uciążliwe dla użytkownika lub ponowne uruchomienie, które nie jest opcją dla tych urządzeń.

Wszelkie sugestie dotyczące aktualizacji menu startowego / ponownego przeczytania pliku startmenu.xml, do których odwołują się moje zasady grupy, byłyby niesamowite!

Próbowałem już standardowej gpupdate, gpupdate / force, aktualizując znacznik czasu na dokumencie, a następnie uruchamiając gpupdate (/ force).

PowerShelling
źródło
2
Przede wszystkim witamy w Super User! Szczerze mówiąc, z mojej perspektywy możesz poświęcać nadzwyczajną ilość czasu i wysiłku na stosunkowo niewielki problem. Z mojego doświadczenia explorer.exewynika, że ponowne uruchomienie procesu nie jest tak uciążliwe dla użytkownika, a jeśli wynik końcowy jest korzystny, jest to bardzo niewielka niedogodność dla większego dobra.
Run5k
Ja także wybrałbym ponowne uruchomienie Eksploratora. Skutki ingerencji są subiektywne i tylko Ty naprawdę poznasz otoczenie, w którym się znajdujesz i realne podejście.
root
W większości przypadków zgadzam się z tobą. Problem polega na tym, że jest on uruchamiany po zainstalowaniu aplikacji. Niektóre niestandardowe aplikacje korzystają z eksploratora, więc nie ma o tym mowy. Wiem, że Microsoft jest w stanie to zrobić, ponieważ po zainstalowaniu aplikacji może pojawić się nowy kafelek. Jestem ciekawy jak? Niestety moja firma zleciła mi to ...
Powershelling

Odpowiedzi:

1

Zabij proces Windows Shell Experience Host:

Get-Process 'shellexperiencehost' | Stop-Process

Pozwala to zachować pasek zadań, pulpit, otwarte okna Eksploratora i hostowane widoki Eksploratora, ale menu Start jest ponownie inicjowane, gdy proces ten zostanie ponownie uruchomiony automatycznie.

Ben N.
źródło