Et si vous interrogiez le registre au lieu d'AD ? comme ceci :
if ((gwmi win32_computersystem).partofdomain -eq $true)
{Get-ItemPropertyValue -Path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\SessionData\1 -Name "LoggedOnDisplayName"}
else
{Get-ItemPropertyValue -Path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\SessionData\1 -Name "LoggedOnUser" | %{$_.Split('\')[1]}}
Remarque : testé uniquement sur Windows 10.
Autre remarque : cette fonction recherche le premier utilisateur connecté dans la session en cours. Par exemple, si vous vous déconnectez de john.smith et vous connectez à will.smith et que vous exécutez la fonction ci-dessus, vous obtiendrez les données relatives à john.smith et non à will.smith.