Hyper-V | Windows Server 2022 DHCP Result code 83

Wird unter Microsoft Hyper-V (Windows Server mit der Hyper-V Rolle) eine virtuelle Maschine mit Windows Server 2022 als Gastbetriebssystem installiert, kommt es häufig vor, dass die IP-Konfiguration nicht von DHCP auf eine statische IP umgestellt werden kann.

Der folgende Screenshot zeigt einen Microsoft Hyper-V Network Adapter in der Server Core Configuration (sconfig).

Unbenannt-1

Die Änderung der IP von DHCP auf eine fest zugewiesene, statische Adresse wird mit folgender Fehlermeldung quittiert und der Adapter verbleibt in der dynamischen Konfiguration.

Unbenannt-2

Lösen läßt sich das Problem über die PowerShell und folgende Befehle.

# Ermitteln des Interface-Indexes des Netzwerk-Adapters
Get-NetAdapter
# Entfernen der IP-Adresse
Remove-NetIPAddress -ifIndex 6 -Confirm:$false
# Vergabe einer neuen, statischen IP-Adresse
New-NetIPAddress -ifIndex 6 -IPAddress 192.168.11.141 '
-PrefixLength 24 - DefaultGateway 192.168.11.1

Sieht dann im Screenshot wie folgt aus.

Unbenannt-3

Enjoy it, b!

Windows 11 Hyper-V VM kann nicht gelöscht werden

Wenn das Hyper-V Management eine VM anzeigt, die nicht mehr administriert werden kann, dann handelt es sich um übrig gebliebene Fragmente. Wurde die VM z.B. aus dem Dateisystem gelöscht und wie in diesem Fall Hyper-V sogar deinstalliert, so taucht die VM nach einer erneuten Installation von Hyper-V wie ein Zombie wieder auf.

Untitled-1

Das Problem konnte ich auf einfache Weise mit der Eingabeaufforderung (als Administrator gestartet) lösen.

image

Nach einem Neustart des Hyper-V Managements war die VM nicht mehr vorhanden. Das Beenden der vmms.exe war natürlich nicht die feine Art und so empfiehlt es sich, den Rechner neu zu starten, bevor Hyper-V wieder verwendet wird.

Untitled-2

Enjoy it, b!

Lancom | Deaktivierung der ISDN-LED im Router

Die ISDN-Schnittstelle und damit auch die dazugehörige LED lassen sich an einem Lancom-Router wie folgt deaktivieren.

image

Web-Oberfläche des Lancom-Routers.

LCOS-Menü / Setup / Interfaces / ISDN/S0 bus (Off)

Oder natürlich im LANconfig über den folgenden Weg.

LANconfig / Configuration/ Interfaces/ WAN/ Interface Settings ISDN/S0 bus (Off)

image

Mittlerweile verschwinden die alten ISDN-Anlagen und wenn der ISDN-Port nicht deaktiviert wird, suggeriert die rote LED eine Störung der Telefonie, was aber gar nicht der Fall ist.

Enjoy it, b!

Freigegebene Postfächer im “neuen Outlook”

Im neuen Outlook findet man die die freigegebenen Postfacher (Shared Mailboxes) im Ordner mit mir geteilt oder bei englischen Spracheinstellungen unter Shared with me.

image

Zusätzlich tritt der nervige Outlook-Protokoll-Fehler nicht mehr auf.

outlook-error

Wahrscheinlich dreht Microsoft auch an den Auth-Protokollen im Hintergrund und hat dabei die aktuelle Version seines Outlook 365 vergessen Smile

Enjoy it, b!

UAC | Skripte unter Windows

Einleitung

Die Benutzerkontensteuerung (User Account Control, UAC) ist ein wichtiger Bestandteil der Windows-Sicherheit. UAC reduziert das Risiko von Malware, indem es die Fähigkeit von bösartigem Code einschränkt, mit Administratorrechten ausgeführt zu werden.

Mit UAC muss jede Anwendung, die das Administrator-Zugriffstoken benötigt, die Zustimmung des Endbenutzers einholen. Die einzige Ausnahme ist die Beziehung zwischen übergeordneten und untergeordneten Prozessen. Untergeordnete Prozesse erben das Zugriffstoken des Benutzers vom übergeordneten Prozess. Der übergeordnete und der untergeordnete Prozess müssen jedoch die gleiche Integritätsstufe haben.

UAC in Skripten unter Windows

Gelegentlich, aber dann wirklich problematisch, wird während der Ausführung eines Skripts eine Bestätigung für die Ausführung eines Befehls oder einer Anwendung angefordert. Als Beispiele seien hier cmd.exe, diskpart.exe und regedit.exe genannt.

Befindet man sich im interaktiven Modus, bestätigt man den Dialog und die Verarbeitung wird fortgesetzt.

cmd-uac

Will man das Skript aber ohne Interaktionen (zum Beispiel remote) ausführen, muss man irgendwie um diese Dialog herumkommen.

PowerShell und die Eingabeaufforderung

Wenn wir über Skripting unter Windows reden, gibt es hauptsächlich Powershell und die Eingabeaufforderung, da beide in neueren Windows Versionen vorhanden sind und nicht zusätzlich installiert werden müssen.

Es gibt eine Reihe von meist freien Utilities und auch Workarounds um mit dem Problem umzugehen, soweit ich das aber vermeiden kann will ich keine 3rd-Party Utilities einsetzen (zumal diese dann im Netzwerk verteilt und auch gewartet werden müssen) und eine Deaktivierung der UAC kommt für mich nicht in Frage.

Microsoft hat hier in Windows selbst eine Lösung eingebaut, die bei mir sowohl in der Eingabeaufforderung (cmd.exe) als auch in der PowerShell sehr gut funktioniert.

Es gibt nämlich die Möglichkeit über eine Umgebungsvariable einen RunAsInvoker zu konfigurieren.

Um beispielsweise regedit.exe ohne UAC-Abfrage zu starten, verwendet man in der PowerShell folgenden Code:

:: Setzen des RunAsInvoker in PowerShell
[Environment]::SetEnvironmentVariable("__COMPAT_LAYER", "RunAsInvoker")

image

In der Eingabeaufforderung kann dagegen dieser Code verwendet werden.

:: Setzen des RunAsInvoker in der Eingabeaufforderung
set __COMPAT_LAYER=RunAsInvoker

image

Happy Skripting und Enjoy it, b!

DxO PureRaw4 Windows Shell-Erweiterungen

DxO PureRaw4 ist ein RAW-Konverter, den ich sehr schätze. Was mir an der Version 4 weniger gefällt, ist die tiefe Integration von PureRaw in das Betriebssystem. Ich brauche keine Erweiterungen im Windows Explorer, keinen ständig im Hintergrund laufenden PureRaw-Prozess und auch keinen automatischen Start von PureRaw zusammen mit Windows.

Streetphotography

(FUJIFILM, X-E4 mit Carl Zeiss Touit 1.8/32 @32.0mm, 1/180s, f/2.8 und ISO250)

Irgendwie konnte ich in den Einstellungen von PureRaw keine Möglichkeit finden, die obigen Punkte zu konfigurieren.

image

Der Autostart von PureRaw bedeutet nicht nur, dass sich dort ein Icon in der Taskleiste von Windows logiert, sondern auch, dass Kapazitäten meines Rechners unnötig belegt werden.

image

Also musste mal wieder die PowerShell für eine Lösung herhalten.

image

Das Skript muss in einer PowerShell-Sitzung mit erweiterten Rechten (elevated) ausgeführt werden und kann hier heruntergeladen werden.

Eine Prüfung ob PowerShell wirklich mit erweiterten Rechten läuft, erfolgt gleich zu Beginn des Skriptes.

#Requires -RunAsAdministrator
Darüber hinaus will ich noch auf die Verwendung von -LiteralPath hinweisen.
 
[string]$RegPath = 'HKLM:\SOFTWARE\Classes\*\shellex\ContextMenuHandlers\{7E6AAE52-1F6D-4BCA-A844-CD8273F428CE}'
Remove-Item -LiteralPath $RegPath -Force
Das ist nötig, da in der Variable $RegPath ein * vorhanden ist und die Befehle Get-ChildItem und Remove-Item mehr oder weniger „hängen“ bleibt und mit CTRL+C abgebrochen werden müssen.
 

M365 | Outlook kann nicht aus einem geteiltem Postfach senden

Bei einem Kunden sollte der Mail-Verteiler service@domain.de in ein geteiltes Postfach umgestellt werden. Wie inzwischen alle Kunden, war auch dieser in M365 unterwegs. Eigentlich keine große Sache, aber nach der Einrichtung funktionierte das Versenden von Mails aus dem Postfach nicht.

Der Fehler lautet [0x80070005-0x000004dc-0x00000524]

Ein NDR mit der folgenden Meldung wurde dem Absender zugestellt.

image

Ich hatte die Sache getestet, aber nur mit OWA und da hatte es funktioniert, also musste das Problem mit dem auf dem PC installierten Outlook zusammenhängen. Aus Sicht von Outlook hatte sich die Mailadresse service@domain.de nicht geändert, aber in M365 wurde sie gelöscht und über ein freigegebenes Postfach wieder zur Verfügung gestellt. Meine Idee war, dass möglicherweise die Offline-Adressbücher auf den PCs nicht aktuell waren.

Nachdem alle Offline-Adressbücher auf dem PCs gelöscht waren, funktionierten auch die geteilten Postfächer ohne Probleme. Zum Löschen muss Outlook beendet werden, beim Neustart werden die Adressbücher dann automatisch neu geladen.

:: Löschen der Offline-Adressbücher lokal auf dem PC
rd "%userprofile%\AppData\Local\Microsoft\Outlook\Offline Address Books" /s /q

Das geht natürlich bei geschlossenem Outlook auch remote.

image

Beide oben gezeigten Wege zeigen die Holzhammer-Methode, lassen sich dafür aber umso besser automatisieren.

Ein Paar Informationen rund um die Verwendung von geteilten Postfächern liefert Microsoft in diesem Artikel.

Ein weiterer Artikel, falls die Mails in den verteilten Postfächern nicht im Ordner gesendete Elemente landen ist auf WindowsPro zu finden.

Enjoy it, b!

Windows | Keine Anmeldung beim Konto möglich

Es gibt Fehler, die man sich nicht wünscht, die aber trotzdem passieren.

Eine Mitarbeiterin konnte sich nicht mehr an ihrem PC anmelden und wurde mit folgender Meldung konfrontiert.

image

Das Abmelden funktionierte und ein Blick in die Eingabeaufforderung zeigte, dass ihr Profil unter C:\Users\<Benutzername> nicht mehr existierte.

Offensichtlich oder wahrscheinlich wurde ihr Profil (aus welchen Gründen auch immer) gelöscht. Der Löschvorgang wurde jedoch nur auf Dateisystemebene durchgeführt. Benutzerprofile sollten immer über den folgenden Dialog gelöscht werden.

Systemeigenschaften / Erweitert/ Benutzerprofile/ Einstellungen …

image

Alternativ kann zur Automatisierung auch DelProf2 von Helge Klein verwendet werden. Das ist zwar kein offizielles Microsoft-Tool, hat aber bei mir in den letzten 15 Jahren problemlos funktioniert.

Wird das Profil nur im Dateisystem gelöscht, bleibt der entsprechende Eintrag in der Registry erhalten und verhindert das Anlegen eines neuen Profils bei der Anmeldung. Windows legt dann ein temporäres Profil an. Der eigentliche Eintrag, der angelegt werden soll, existiert bereits und hat die Endung .bak

image

:: Profil-Pfad in der Registry
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList

Falls dort ein Eintrag mit der Endung .bak vorhanden ist, sollte dieser mit allen Unterverzeichnissen gelöscht werden.

:: Profil-Pfad in der Registry mit der Erweiterung .bak
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\S-1-5-21-1234567890-1234567890-1234567890-1112.bak

Nach dem Löschen des Eintrages funktioniert die Anmeldung problemlos und das Profil kann neu erstellt und konfiguriert werden. Wohl dem, der seine Ordner entweder mit OneDrive for Business gesichert hat oder den Dateiversionsverlauf nutzt. Wir kennen ja die Neigung der Nutzer alles auf dem Desktop zu speichern Winking smile

Enjoy it, b!

M365 | Kalender in OWA teilen

Häufiger als man denkt, tun sich Mitarbeiter schwer damit, ihren Kalender über Outlook in der Organisation freizugeben. Wenn ich bei unterstützen muss, wähle ich den einfachen Weg über Outlook Web Access (OWA) https://outlook.office365.com

Hat die Anmeldung funktioniert, ist der Weg recht einfach. Nach der Auswahl des Kalenders (meist ist sowieso nur einer vorhanden) klickt man auf Teilen und kann damit mit der Freigabe des eigenen Kalender beginnen.

image

Die Eingabe der Mail-Adresse und Auswahl entsprechender Berechtigungen ist selbsterklärend.

image

Enjoy it, b!

M365 | Gesendete Mails in freigegebenen Postfächern

Persönlich bin ich ein großer Freund der geteilten (freigegebenen) Postfächern wie man sie in Microsoft 365 anlegen kann. Wird aus einem geteilten Postfach heraus gesendet, landen die Mails aber im eigenen Ordner für “Sent Items” / gesendete Elemente, dass erschwert den Kollegen eine Übersicht, der über dieses Postfach erfolgten Kommunikation.

Darum wäre es sinnvoll, dass gesendete Mails in geteilten Postfächern auch dort in den Ordner für gesendete Elemente vorhanden sind.

Diesem Wunsch kann relativ einfach nachgekommen werden. Dazu sind die folgenden Schritte im Microsoft 365 Admin Center notwendig.

  1. Anmelden als M365 Administrator unter https://portal.office.com
  2. Öffnen des Bereichs Admin
  3. Unter Teams und Gruppen / Freigegebene Postfächer auf das entsprechende freigegebene Postfach klicken


    image

  4. Dort unter Gesendete Elemente / Bearbeiten auswählen und entsprechend die Optionen Als dieses Postfach gesendete Elemente kopieren und / oder Im Auftrag dieses Postfach gesendete Elemente kopieren und Speichern


    image

Enjoy it, b!