Jotkin cmdlet-komennot epäonnistuvat PowerShell ISE:ssä Exchange Server 2010 SP3 -päivityksen jälkeen
Alkuperäinen KT-numero: 2859999
Oireet
Oletetaan seuraava tilanne:
- Päivität Exchange Server Service Pack 2 (SP2) Rollup 6 -ympäristön Exchange Server 2010 SP3:een.
- asiakastietokoneeseen on asennettu Exchange Server 2010 SP3 -hallintatyökalut.
- PowerShellin integroidun komentosarjaympäristön (ISE) avulla voit avata paikallisen Windows PowerShell esiintymän asiakastietokoneessa.
- Voit lisätä Exchange-laajennukset. Voit esimerkiksi lisätä seuraavan Exchange-laajennuksen:
Add-PSSnapin Microsoft.exchange.powershell.e2010
Tässä skenaariossa jotkin Exchangen cmdlet-komennot eivät enää toimi. Esimerkiksi seuraavat cmdlet-komennot eivät enää toimi:
Test-WebServicesConnectivity -ClientAccessServer "Servername" -TrustanySSLcertificate
Set-CASMailbox
Huomautus
Muut cmdlet-komennot eivät välttämättä toimi tässä skenaariossa.
Lisäksi näyttöön tulee seuraava virhesanoma PowerShell ISE:ssä:
Add-PSSSnapin Microsoft.Exchange.Management.PowerShell.E2010
PS H:\> Test-WebServicesConnectivity -ClientAccessServer <Clinet Access Server Name>
ARNING: An unexpected error has occurred and a Watson dump is being generated: Operation is not valid due to the current state of the object.
Test-WebServicesConnectivity : Operation is not valid due to the current state of the object.
Myös seuraava virhe kirjataan sovelluslokiin:
Time : -
ID : 8
Level : Error
Source : MSExchange CmdletLogs
Machine : -
Message: (PID 12460, Thread 9) Task Test-WebServicesConnectivity throwing unhandled exception: System.InvalidOperationException: Operation is not valid due to the current state of the object.
at Microsoft.Exchange.Data.Storage.ExchangePrincipal.get_ServerFullyQualifiedDomainName()
at Microsoft.Exchange.Monitoring.TestCasConnectivity.ResetAutomatedCredentialsAndVerify(TestCasConnectivityRunInstance instance)
at Microsoft.Exchange.Monitoring.TestCasConnectivity.BuildRunInstanceForSiteMBox(String deviceId)
at Microsoft.Exchange.Monitoring.TestCasConnectivity.BuildRunInstances()
at Microsoft.Exchange.Monitoring.TestCasConnectivity.InternalProcessRecord()
at Microsoft.Exchange.Configuration.Tasks.Task.ProcessRecord().
Vaihtoehtoinen menetelmä
Voit kiertää tämän ongelman avaamalla etäistunnon Exchange-palvelimeen käyttämällä seuraavia cmdlet-komentoja ISE-komentosarjan alussa:
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri http://<FQDN of Exchange 2010 server>/PowerShell/ -Authentication Kerberos import-pssession $session add-pssnapin microsoft.exchange* test-webservicesconnectivity -clientaccessserver CASSERVER -trustanysslcertificate
Skenaariot, joissa Exchangen cmdlet-komentoja voidaan suorittaa
- Exchange Management Shellissä Exchange-palvelimessa.
- Exchange Management Shellissä tietokoneessa, johon on asennettu hallintatyökalut.
- Exchange-palvelimen PowerShellissä Exchange-laajennusten lataamisen jälkeen.
- Kun Exchange-laajennukset on ladattu, PowerShell ISE:ssä Exchange-palvelimessa.
Huomautus
Cmdlet-komentojen suorittamista paikallisessa PowerShell-esiintymässä ei tueta Exchange Server 2010, ellei tätä käyttöä nimenomaisesti dokumentoida pakolliseksi Exchange Server 2010 TechNet -dokumentaatiossa. Lisätietoja on kohdassa Paikalliset suoritustilat eivät ole tuettuja Exchange 2010:ssä.
Skenaariot, joissa Exchangen cmdlet-komentoja ei voi suorittaa
- PowerShellistä tietokoneessa, joka ei ole käynnissä Exchange Server mutta johon on asennettu Exchange Server SP3-hallintatyökalut.
- PowerShell ISE:stä tietokoneessa, joka ei ole käynnissä Exchange Server mutta johon on asennettu Exchange Server SP3-hallintatyökalut.
Palaute
https://aka.ms/ContentUserFeedback.
Tulossa pian: Vuoden 2024 aikana poistamme asteittain GitHub Issuesin käytöstä sisällön palautemekanismina ja korvaamme sen uudella palautejärjestelmällä. Lisätietoja on täällä:Lähetä ja näytä palaute kohteelle