I am setting up remote capability within our 100+ Terminal Server enviornment and I have run into a snag when trying to use the Invoke-command cmdlet to run scripts on these servers.
What I am seeing is that within our terminal server environment, Language Mode has by default set to ContrainedLanguage Mode which is preventing me from launching an application inventory script to get a list of installed applications on our terminal server farm.
I was wondering if anyone can direct me to ‘best practices’ with enabling ‘Full Language’ mode on a production network. I need to make the argument to my boss if I am going to open this up on our network.
C:\Users\bclanton\Code\terminalServers> Invoke-Command -ComputerName w2k8-r12-01 -FilePath {.\InstalledPrograms.ps1} -Credential XXXXX\administrator Cannot invoke method. Method invocation is supported only on core types in this language mode. + CategoryInfo : InvalidOperation: (:) [], RuntimeException + FullyQualifiedErrorId : MethodInvocationNotSupportedInConstrainedLanguage + PSComputerName : w2k8-r12-01 You cannot call a method on a null-valued expression. + CategoryInfo : InvalidOperation: (:) [], RuntimeException + FullyQualifiedErrorId : InvokeMethodOnNull + PSComputerName : w2k8-r12-01 You cannot call a method on a null-valued expression. + CategoryInfo : InvalidOperation: (:) [], RuntimeException + FullyQualifiedErrorId : InvokeMethodOnNull + PSComputerName : w2k8-r12-01
Target Server w2k8-r12-01
PS C:\Users\tsadmin> $ExecutionContext.SessionState.LanguageMode ConstrainedLanguage