Archiv der Kategorie: Windows Tutorials

Windows Application Integrations Advanced Workarounds Tutorials Enhancements unblog technical contribution for professionals

WindowsApps starten nicht mehr

Windows 10 Apps öffnen sich nicht mehr, nachdem Windows Update ausgeführt wurde. Diese Anleitung beschreibt mehrere möglichkeiten zur Problembehandlung, um WindowsApps wieder ausführbar zu machen.

WindowsApps – so wird’s gemacht

Folgende Vorgehensweise zeigt die Wiederherstellung der WindowsApps, dazu öffnet man die PowerShell als Administrator.

powershell

Mit drücken von Windows Start und der Eingabe von powershell erscheint im Suchfenster die App Windows PowerShell, hier wählt man Als Administrator ausführen.

In der geöffneten PowerShell die folgende Zeile ausführen.

Mit  Copy Paste die Zeile in der PowerShell einfügen.

Der nächste Schritt besteht darin, ein PowerShell Befehl auszuführen, durch diesen der Windows Store neu registriert wird. Dabei sicherstellen dass in der Zwischenzeit keine Windows App-Updates ausgeführt werden.

Mit  Copy Paste die Zeile in der PowerShell einfügen.

Starte den Computer jetzt neu und überprüfe, ob das Windows Store-Problem behoben wurde. Öffnet sich die Windows Store App noch immer nicht, kann der App-Cache zurückgesetzt werden, hierzu drückt man die Tastenkombination Windows + R um das Fenster Ausführen zu öffnen, und gibt wsreset ein und klickt OK.

hoytkey
run_wsreset

WindowsApps Sicherheitseinstellungen

Werden Fehler beim Zugriff auf WindowsApps erzeugt, können die Sicherheitseinstellungen überprüft werden, hierzu öffnet man den Explorer und geht zu C:\Programme, nun mit Rechtsklick über dem Ordner WindowsApps die Eigenschaften öffnen, zum Abschnitt Sicherheit gehen und den Button Erweitert klicken, dann den Button Weiter klicken, die Benutzerkontensteuerung mit Ja bestätigen, die Erweiterte Sicherheitseinstellungen für „WindowsApps“ wird geöffnet, hier sollte TrustedInstaller Besitzer sein und Vollzugriff haben.

trustedinstaller

Ist der Button Vererbung aktivieren nicht (grau) verhindert, kann die Vererbung aktiviert werden, damit werden die Berechtigungen des übergeordneten Ordners auf diesen Ordner übernommen, die Standard Berechtigung sieht vor, dass nur TrustedInstaller und SYSTEM über Vollzugriff verfügt. Dabei haben auch Benutzer mit Administratorrechte Zugriff auf die Programm Ordner. Nach diesem Schritt die zuvor beschriebene PowerShell Zeile nochmals ausführen.

Empfohlene Problembehandlung

Auch kann versucht werden, die Reparatur mit hilfe der Windows Empfohlenen Problembehandlung zu ermitteln und zu beheben. Indem man auf Einstellungen geht, dann zu Update und SicherheitProblembehandlung – im Abschnitt Weitere Probleme suchen und beheben, ganz unten mit Klick auf Windows Store-AppsProblembehandlung ausführen.

  Ab Windows Funktionsupdate 2004 hat sich die Menüstruktur geändert. Unter Problembehandlung muss man auf Zusätzliche Problembehandlungen klicken.

Problembehandlung

Der Assistent zur Problembehandlung wird gestartet, dieser Diagnosedaten sammelt, und es wird versucht die App zu reparieren.

probleme-werden-ermittelt

Hier wurde kein Fehler gefunden, ist ein Problem ermittelt, erscheint ein Hinweis wie „Problem behoben oder nicht behoben“. Am Ende der Problembehandlung, kann gewählt werden ob erkannte Fehler und Probleme an Microsoft übermittelt werden sollen, mit Senden Sie Feedback zu dieser Problembehandlung. Mit Problembehandlung schließen wird der Assistent beendet.

ms-windows-strore:PurgeCaches Die App wurde nicht gestartet

ms-windows-strore

Erscheint mit der Ausführung von wsreset der Fehler ms-windows-strore:PurgeCaches, muss der Cache Manuel gelöscht werden. Unter dem Pfad %HOMEPATH%\AppData\Local\Packages, befinden sich die App Ordner, innerhalb der Ordner gibt es den Ordner LocalCache, dessen Inhalt gelöscht werden kann.

localcache

Im Ordner LocalCache können alle Unterordner und Dateien gelöscht werden, den Ordner selbst jedoch nicht löschen, wie beispielsweise bei WindowsStore_8wekyb3d8bbwe\LocalCache, hier kann der Inhalt gelöscht werden, was eigentlich der Befehl wsreset tun würde.

Windows Update

Bleiben diese Vorgehensweisen und Problembehandlungen erfolglos, gibt es noch Windows Update, oft werden durch Updates nicht nur fehlerhafte Komponenten ersetzt, auch werden Einstellungen überprüft und ermittelte Probleme behoben. Es besteht demnach die Möglichkeit, dass nach einer gewissen Zeit, die Apps wieder ordnungsgemäss funktionieren, dies konnte so bei mehreren Installationen festgestellt werden.

Beitrag Teilen!

Ping in der PowerShell

PowerShell ICMP Ping mit Test-Connection

Ping unter Windows 10 beschränkt sich nicht mehr nur zur Ausführung aus dem Command Prompt, dabei wartet Ping in der PowerShell mit zusätzlichen Möglichkeiten auf. Das Cmdlet Test-Connection in der PowerShell 7 enthält erweiterte Funktionen, wie Repeat und Traceroute oder als Ping Prozess im Hintergrund.

Test-Connection

Beispiele mit Test-Connection

Das Cmdlet Test-Connection sendet ICMP Echo-Anforderungspakete (Internet Control Message Protocol) an einen oder mehrere durch Komma getrennte Remote-Hosts und gibt die Echo Antworten zurück.

Mit der Option -Repeat wird wie dies von Ping bekannt ist, ICMP Anfragen an den angegebenen Host gesendet, bis zur Beendigung des Vorgangs, durch die Eingabe von CTRL+BREAK.

Dieses Beispiel zeigt, wie ein Test-Connection Befehl als PowerShell Hintergrund Job ausgeführt wird.

Routenverfolgung – Traceroute mit dem Test-Connection in der PowerShell.

Der in PowerShell 6.0 eingeführte Parameter Traceroute ordnet eine Routenverfolgung an, zwischen dem lokalen Computer und dem Remote-Ziel, das mit Parameter angegeben wird.

In einem weiteren Beispiel werden Parameter verwendet um den Befehl Test-Connection anzupassen. Der lokale Computer sendet einen Ping-Test an einen Remotecomputer.

Dieses Cmdlet ist ab PowerShell 6.0 und neuer verfügbar.

Test-Connection TCP Port Parameter

Der Parameter -TcpPort gibt die TCP-Portnummer zum Ziel an, die im TCP-Verbindungstest verwendet werden soll. Das Cmdlet versucht, eine TCP-Verbindung mit angegebenen Port zum Ziel herzustellen.

Wenn eine Verbindung hergestellt werden kann, wird $True zurückgegeben. Kann keine Verbindung hergestellt werden, wird $False zurückgegeben. Der Paramter -TcpPort ist ab PowerShell 7.0 und neuer verfügbar.

Test-Connection MTU Size Parameter

Der Parameter -MtuSize wird verwendet, um die Pfad MTU Größe zu ermitteln.

Das Cmdlet gibt ein PingReply#MTUSize Objekt zurück, das die Pfad MTU Größe zum Ziel enthält, es ist ab PowerShell 7.0 und neuer verfügbar.

Test-Connection Parameter Quiet

Der Parameter -Quiet gibt einen booleschen Wert zurück. Die Verwendung dieses Parameters unterdrückt alle Fehler.

Dieses Cmdlet ist ab PowerShell 7.0 und neuer verfügbar.

PowerShell Remoting Test-Connection

Im nächsten Beispiel wird eine Sitzung zum Server2 erstellt, wenn mindestens einer der an den Computer gesendeten Pings erfolgreich ist. Hierzu muss auf dem Remote Computer TrustedHosts konfiguriert werden.

Um HTTP für PowerShell-Remoting zu verwenden, führt man folgenden Befehl auf dem Remote-Host aus, von einem als Administrator geöffneten (cmd) Command Prompt.

Die TrustedHosts-Konfigurationseinstellung erfolgt durch ausführen von winrm.cmd mit der Option config/client auf dem Remote-Host.

Anfragen von 192.168.1.2 werden angenommen. Die Abfrage der Globale Konfiguration von WinRM ist wie folgt.

Beitrag Teilen!

PowerShell 7 Installation

PowerShell 7 unter Windows 10 Installation und Anwendung

Microsoft hat PowerShell 7.0 am 4. März 2020 angekündigt. Es ist das neuste wichtige Update für PowerShell, die plattformübergreifende Befehlszeilen-Shell und Skriptsprache von Microsoft. In diesem Beitrag wird aufgezeigt, was neu ist, und wie sich PowerShell 7 auf einem Windows 10 Computer installieren lässt.

PowerShell 7 – so wird’s gemacht

PowerShell 7 ist für Windows, MacOS und Linux verfügbar. Auf Github ist die Release Übersicht, hier geht es mit Klick auf ein Release zum Download, es sind die Pakete für die entsprechende Betriebssystem und Rechnerarchitektur aufgeführt. Das PowerShell MSI-Paket für Windows 64 bit herunterladen, und mit einem doppelklick den Setup-Assistenten starten.

powershell7

Hinweis: PowerShell 7 wird neben Windows PowerShell 5.1 – das mit Windows 10 ausgeliefert wird – installiert und ausgeführt, und ersetzt PowerShell Core 6.x. Wer PowerShell 6 neben PowerShell 7 ausführen möchte, muss dieses nachträglich über das ZIP-Paket erneut installieren.

  Die Windows PowerShell Version abfragen.

Was ist neu in PowerShell 7

Die neueste Version, PowerShell 7 baut auf dem vorherigen PowerShell Core 6.1 auf. Es unterstützt weiterhin die plattformübergreifende Bereitstellung und fügt eine Reihe neuer Funktionen, Cmdlets und Fehlerkorrekturen hinzu. Einige der wichtigsten neuen Funktionen sind:

  • Pipeline-Parallelisierung mit ForEach-Object: Durchlaufen von Elemente einer Sammlung parallel zum neuen Parameter -Parallel oder druch anlegen mit Parameter einer maximale Thread-Anzahl (Standardeinstellung ist fünf) fest -ThrottleLimit.
  • Das Hinzufügen neuer Operatoren:
    • Ternärer Operator “? : ”: Funktioniert ähnlich wie eine if-else-Anweisung, indem zwei Ausdrücke mit einer Bedingung verglichen werden, um festzustellen, ob sie wahr oder falsch ist,
      z. Test-Path „C:\Users“ ? „exists“ : „does not exist“
    • Pipeline-Kettenbetreiber „||“ und „&&“: Der Operator && führt die rechte Pipeline aus, wenn die linke Pipeline erfolgreich war. Umgekehrt ist die || Der Operator führt die rechte Pipeline nur aus, wenn die linke Pipeline ausfällt.
  • Get-Error Cmdlet: Eine vereinfachte und dynamische Fehleransicht zur einfacheren Untersuchung des letzten Fehlers in der aktuellen Sitzung.
  • Automatische Benachrichtigungen neuer Versionen: Benutzer Benachrichtigen, wenn eine neue Version von PowerShell verfügbar ist. Das Standardupdate sucht einmal täglich nach einer neuen Version.

Wer mit PowerShell im Windows Terminal arbeitet, kann den folgenden Abschnitt zur Terminal Einstellung, in die Datei settings.json einfügen.

Invoke-WebRequest: Die Anfrage wurde abgebrochen

Beim Abrufen von Web-Seiten-Inhalte mit dem Cmdlet Invoke-WebRequest, kann des Öfteren ein SSL/TLS-Fehler auftreten.

Passieren kann das in erster Linie mit Invoke-WebRequest, das wie die Aliase curl oder wget, Web-Seiten-Inhalte aus der Kommando­zeile herunterladen werden.

Der Grund dabei ist, dass immer öfters Webseiten das TLS-Protokoll der Version 1.0 ablehnen. Bei Windows PowerShell muss man dann, je nach Version des installierten .NET-Frameworks, TLS 1.1 / 1.2 manuell aktivieren.

Wenn PowerShell auf einer älteren Version als 4.62 des .NET-Framework genutzt wird, ist es per default TLS 1.0. Dies betrifft Windows 8.1, Server 2016 und ältere Windows 10 Versionen.

Unter Windows PowerShell 5.1 und Core 6.1 gibt es die Möglichkeit nicht, die Version des TLS-Protokolls durch Parameter festzulegen, bei PowerShell 7 lässt sich der Parameter SslProtocol anwenden.

Wenn die angerufene Webseite TLS 1.0 nicht akzeptiert, kann es bei Invoke-WebRequest zu einem Fehler kommen. Es tritt dann häufig folgender Fehler auf:

Behelfen kann man sich dabei mit folgendem Aufruf.

Damit beschränkt man sich auf die TLS-Protokoll Versionen 1.1 und 1.2. Diese Änderung wirkt sich jedoch nur auf die aktive PowerShell Session aus, so dass man diesen Befehl jedes Mal erneut ausführen muss.

Das Problem ergibt sich jedoch nicht in Windows PowerShell 6.x oder 7, da sich die TLS-Protokoll Version für Invoke-WebRequest mit dem Parameter SslProtocol steuern lässt. Und das darunterliegende .NET Core per default eine neuere Version des Protokolls verwendet.

Fazit

Es bietet sich hiermit an, bei älteren Betriebs­systemen und der Anwendung von Invoke-WebRequest, die eine neuere TLS-Verbindung benötigen, auf Windows PowerShell 7 zu gehen.

Update

Mittlerweise ist PowerShell 7.1 erschienen. Microsoft gab das Power­Shell Release 7.1 frei, das primär Bugfixes und kleinere Änderungen enthält. Updates gibt es zudem für einige Module, darunter PSReadLine 2.1 mit einer Auto­ver­voll­ständigung auf Basis der History.

Das Update führt ein Feature namens Predictive IntelliSense ein. Es ergänzt die Autover­voll­ständigung während der Eingabe mit passenden Kommandos aus der Befehls­historie. Das Feature lässt sich anpassen, so kann etwa das Hellgrau der Schrift durch eine besser lesbare Farbe ersetzen werden. Standard­mässig ist es deaktiviert, es lässt sich über folgendes Kommando aktivieren.

Beitrag Teilen!