I want to configure high trusted app for app dev in SharePoint, and to do so, i need first to insert some commands in the powershell editor like :
$publicCertPath = "C:\Certs\HighTrustSampleCert.cer"
$certificate = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2($publicCertPath)
I am using windows PowerShell on Windows Server 2012 R2 which includes Windows PowerShell 4 that includes by default the new-object cmd-let... I don't understand though, why doesn't my operating system recognize that command ... I don't stop having the following error : New-Object : The term 'New-Object' is not recognized as the name of a cmdlet.
When i open powerShell i get this :
*select :
The term 'Select-Object' 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. At C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\CONFIG\POWERSHELL\Registration\SharePoint.ps1:1 char:16 + $ver = $host | select version + ~~~~~~ + CategoryInfo : ObjectNotFound: (Select-Object:String) [], Comma ndNotFoundException + FullyQualifiedErrorId : CommandNotFoundException Set-location : The term 'Set-location' 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 At C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\CONFIG\POWERSHELL\Registration\SharePoint.ps1:4 char:1 + Set-location $home + ~~~~~~~~~~~~ + CategoryInfo : ObjectNotFound: (Set-location:String) [], Comman dNotFoundException + FullyQualifiedErrorId : CommandNotFoundException*
I thought that was normal until today... does it have any relation with the error? And here is the hole (new-object) exception stack:
New-Object : The term 'New-Object' 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. At line:1 char:16 + $certificate = New-Object System.Security.Cryptography.X509Certificates.X509Cert ... + ~~~~~~~~~~ + CategoryInfo : ObjectNotFound: (New-Object:String) [], CommandN otFoundException + FullyQualifiedErrorId : CommandNotFoundException
ps: i want to mention that when i used enter-psSession and worked remotely, the command new-object was recognized but sharepoint commands (like Get-SPAuthenticationRealm) were no more recognized ... And it's like there is a problem related to the operating system.
New-Object
cmdlet is available since PowerShell 1.0. It's also exported by theMicrosoft.PowerShell.Utility
module, so if you don't have that loaded in your PowerShell session, that could trigger an error like that. Does the result list ofGet-Module
contain this module? – UnderNew-Object
are only available if the module that implements them is loaded.New-Object
, in particular is provided by theMicrosoft.PowerShell.Utility
module. You can verify if this module is loaded in your session by running theGet-Module
cmdlet. This will give you the list of loaded modules andMicrosoft.PowerShell.Utility
should be in the list. This should confirm if you haveNew-Object
available at all. – UnderGet-Module -ListAvailable' to get the list of PowerShell modules available for loading. This should include
Microsoft.PowerShell.Utility. If it's in the list, you can just run
Import-Module Microsoft.PowerShell.Utility` to load it. By the way this module is among the Core Modules of PowerShell so the default session should include them. If this is a just a regular PowerShell session, you may want to try repairing your PowerShell installation. – Under