Hi,
I am having issues with MDT, now on two separate servers. Initially I just moved the MDT role to the Hyper-V host as a quick fix, but would like a more permanent resolution if possible, so I can move it back to the DC.
The issue is when opening MDT, I'm met with a blank MMC console with an error message stating "Initialization Error - PowerShell is required to use the Deployment Workbench. Please install PowerShell then relaunch Deployment Workbench".
The PowerShell v2.0, 5.1 and ISE features are enable in server manager (and MDT used to work fine on the server) - running $PSVersionTable in Powershell gives:
PSVersion 5.1.17763.2931
PSEdition Desktop
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
BuildVersion 10.0.17763.2931
CLRVersion 4.0.30319.42000
WSManStackVersion 3.0
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1
I've removed Sophos Anti-Virus, installed Dot Net 4.8, removed MDT and the ADKs, deleted the deployment share, re-installed from scratch, run sfc /scannow.
Server is a Dell R440 running Windows Server 2019 Standard (version 1809)
Below are the results of a DebugView log when opening MDT:
:
00000001 0.00000000 [11740] Suspending
00000002 2.81711650 [4744] Main
00000003 3.66778445 [4744] Exception when checking PowerShell: System.TypeInitializationException: The type initializer for 'Microsoft.BDD.Workbench.WorkbenchRunspace' threw an exception. ---> System.Management.Automation.CommandNotFoundException: The term 'Out-Default' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
00000004 3.66778445 [4744] at System.Management.Automation.Runspaces.PipelineBase.Invoke(IEnumerable input)
00000005 3.66778445 [4744] at System.Management.Automation.Runspaces.Pipeline.Invoke()
00000006 3.66778445 [4744] at System.Management.Automation.PowerShell.Worker.ConstructPipelineAndDoWork(Runspace rs, Boolean performSyncInvoke)
00000007 3.66778445 [4744] at System.Management.Automation.PowerShell.Worker.CreateRunspaceIfNeededAndDoWork(Runspace rsToUse, Boolean isSync)
00000008 3.66778445 [4744] at System.Management.Automation.PowerShell.CoreInvokeTOutput
00000009 3.66778445 [4744] at System.Management.Automation.PowerShell.Invoke(IEnumerable input, PSInvocationSettings settings)
00000010 3.66778445 [4744] at System.Management.Automation.PowerShell.Invoke()
00000011 3.66778445 [4744] at System.Management.Automation.Runspaces.LocalRunspace.DoOpenHelper()
00000012 3.66778445 [4744] at System.Management.Automation.Runspaces.RunspaceBase.CoreOpen(Boolean syncCall)
00000013 3.66778445 [4744] at Microsoft.BDD.Workbench.WorkbenchRunspace.Reset()
00000014 3.66778445 [4744] at Microsoft.BDD.Workbench.WorkbenchRunspace..cctor()
00000015 3.66778445 [4744] --- End of inner exception stack trace ---
00000016 3.66778445 [4744] at Microsoft.BDD.Workbench.WorkbenchRunspace.Reset()
00000017 3.66778445 [4744] at Microsoft.BDD.Workbench.PropertySheetSnapIn.Initialize()
A google with the exception in the log doesn't turn anything up. Any help will be much appreciated as I've hit the limit of my knowledge.
Many thanks,
Ben