Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
PowerShell 7.3 is de volgende stabiele release, gebouwd op .NET 7.0.
PowerShell 7.3 bevat de volgende functies, updates en belangrijke wijzigingen.
Belangrijke wijzigingen en verbeteringen
- In deze release zijn Windows-API's bijgewerkt of verwijderd voor naleving, wat betekent dat PowerShell 7.3 niet wordt uitgevoerd in Windows 7. Hoewel Windows 7 niet meer wordt ondersteund, kunnen eerdere builds worden uitgevoerd op Windows 7.
 - PowerShell Direct voor Hyper-V wordt alleen ondersteund in Windows 10, versie 1809 en hoger.
 - 
              
Test-Connectionis verbroken vanwege een opzettelijke wijziging die fouten veroorzaakt in .NET 7. Het wordt bijgehouden door #17018 - Voeg 
cleanblok toe aan scriptblok als peer-tobeginenprocessendom eenvoudig opschonen van resources toe te staan (#15177) - Standaardinstelling wijzigen voor 
$PSStyle.OutputRenderinghost - Tekenreeksinvoer ongewijzigd maken 
Out-Stringen behouden (Out-File) - Verplaats de typegegevensdefinitie van System.Security.AccessControl.ObjectSecurity naar de Microsoft.PowerShell.Security-module (#16355) (bedankt)@iSazonov!)
- Vóór deze wijziging hoeft een gebruiker de Module Microsoft.PowerShell.Security niet expliciet te importeren om de code-eigenschappen te gebruiken die zijn gedefinieerd voor een exemplaar van System.Security.AccessControl.ObjectSecurity.
 - Na deze wijziging moet een gebruiker microsoft.PowerShell.Security-module expliciet importeren om deze code-eigenschappen en codemethoden te kunnen gebruiken.
 
 
Verbeteringen aan tabvoltooiing
- PowerShell 7.3 bevat PSReadline 2.2.6, waarmee Predictive IntelliSense standaard wordt ingeschakeld. Zie about_PSReadLine voor meer informatie.
 - Tabbladvoltooiing herstellen binnen het scriptblok dat is opgegeven voor de 
ValidateScriptAttribute. (#14550) (Bedankt@MartinGC94!) - Tabbladvoltooiing toegevoegd voor luslabels na 
break/continue(#16438) (Bedankt @MartinGC94!) - Hashtable-voltooiing in meerdere scenario's verbeteren (#16498) (Bedankt @MartinGC94!)
- Parameter-splatting
 - 
              Parameter Argumenten voor 
Invoke-CimMethod - 
              FilterHashtable-parameter voor 
Get-WinEvent - Eigenschapsparameter voor de CIM-cmdlets
 - Verwijdert duplicaten uit voltooiingsscenario's voor leden
 
 - Ondersteuning voor slashes in netwerkshare (UNC-pad) voltooiing (#17111) (Bedankt @sba923!)
 - Automatisch aanvullen van leden verbeteren (#16504) (Bedankt @MartinGC94!)
 - ValidSet-voltooiingen prioriteren via Enums voor parameters (#15257) (bedankt) @MartinGC94!)
 - Ondersteuning voor typedeductie toevoegen voor algemene methoden met typeparameters (#16951) (Bedankt) @MartinGC94!)
 - Typedeductie en voltooiingen verbeteren (#16963) (Bedankt @MartinGC94!)
- Hiermee kunnen methoden worden weergegeven in voltooiingsresultaten voor 
ForEach-Object -MemberName - Hiermee voorkomt u voltooiing van expressies die een ongeldige waarde retourneren, zoals 
([void]("")) - Hiermee kunnen niet-standaardklasseconstructors worden weergegeven wanneer de voltooiing van de klasse is gebaseerd op de AST
 
 - Hiermee kunnen methoden worden weergegeven in voltooiingsresultaten voor 
 - Typedeductie voor (
$_) verbeteren (bedankt)@MartinGC94!) - Typedeductie voor ICollection herstellen (#17752) (Bedankt @MartinGC94!)
 - Voorkomen dat accolades worden verwijderd bij het voltooien van variabelen (#17751) (Bedankt) @MartinGC94!)
 - Voltooiing toevoegen voor indexexpressies voor woordenlijsten (#17619) (Bedankt @MartinGC94!)
 - Typevoltooiing voor kenmerktokens corrigeren (#17484) (Bedankt @MartinGC94!)
 - De voltooiing van het tabblad Dynamische parameter verbeteren (#17661) (Bedankt @MartinGC94!)
 - Vermijd positionele bindingsparameters bij het voltooien van de parameter vóór de waarde (#17693) (Bedankt) @MartinGC94!)
 
Foutafhandeling verbeterd
- Juist instellen 
$?voor opdrachtexpressie met omleidingen (#16046) - Een cast-fout oplossen bij gebruik 
$PSNativeCommandUseErrorActionPreference(#15993) - De systeemeigen opdrachtfoutafhandeling optioneel uitvoeren 
ErrorActionPreference(#15897) - Geef het uitvoerbare pad op zoals 
TargetObjectvoor niet-nul afsluitcode ErrorRecord (#16108) (Bedankt @rkeithhill!) 
Verbeteringen voor sessie en externe toegang
- Toevoegen 
-Optionsaan de PSRP via SSH-opdrachten om OpenSSH-opties rechtstreeks door te geven (#12802) (Bedankt @BrannenGH!) - Parameter toevoegen 
-ConfigurationFileom het starten van een nieuw proces toe tepwshstaan met de sessieconfiguratie die is gedefinieerd in een.psscbestand (#17447) - Ondersteuning toevoegen voor het gebruik 
New-PSSessionConfigurationFileop niet-Windows-platforms (#17447) 
Bijgewerkte cmdlets
- Parameter toevoegen 
-HttpVersionaan web-cmdlets (#15853) (Bedankt@hayhay27!) - Ondersteuning toevoegen aan web-cmdlets voor open-ended invoertags (#16193) (Bedankt) @farmerau!)
 - Oplossing 
ConvertTo-Json -Depthom maximaal 100 toe te staan (#16197) (Bedankt @KevRitchie!) - De verwerking van variabelen verbeteren bij het aanroepen 
Invoke-Commandmet de$using:expressie (#16113) (Bedankt@dwtaber!) - Toevoegen 
-StrictModeom het opgeven van de strikte modus toe teInvoke-Commandstaan bij het lokaal aanroepen van opdracht (#16545) (Bedankt @Thomas-Yu!) - Voeg 
cleanblok toe aan scriptblok als peer-tobeginenprocessendom eenvoudig opschonen van resources toe te staan (#15177) - Schakeloptie toevoegen 
-AmendedaanGet-CimClasscmdlet (#17477) (Bedankt@iSazonov) - Gewijzigd 
ConvertFrom-Json -AsHashtablevoor gebruik van geordende hashtabel (#17405) - ANSI-escapereeksen in tekenreeksen verwijderd voordat ze naar (
Out-GridView) worden verzonden - 
              De parameter Milliseconden toegevoegd aan 
New-TimeSpan(#17621) (Bedankt)@NoMoreFood!) - Optionele parameters weergeven bij het weergeven van methodedefinities en overbelastingen (#13799) (Bedankt) @eugenesmlv!)
 - Toestaan dat opdrachten nog steeds worden uitgevoerd, zelfs als de huidige werkmap niet meer bestaat (#17579)
 - Ondersteuning voor HTTPS toevoegen met 
Set-AuthenticodeSignature -TimeStampServer(#16134) (Bedankt@Ryan-Hutchison-USAF!) - Decimale getallen weergeven in een tabel met de huidige cultuur (#17650)
 - Typeversneller toevoegen besteld voor OrderedDictionary (#17804) (Bedankt @fflaten!)
 - Toevoegen 
find.exeaan verouderd gedrag voor argumentbinding voor Windows (#17715) - Schakeloptie toevoegen 
-noprofileloadtimeaan pwsh (#17535) (Bedankt @rkeithhill!) 
Zie het wijzigingenlogboek in de GitHub-opslagplaats voor een volledige lijst met wijzigingen.
Experimentele functies
In PowerShell 7.3 zijn de volgende experimentele functies algemeen geworden:
PSAnsiRenderingFileInfo- Met deze functie wordt het$PSStyle.FileInfolid toegevoegd en wordt het kleuren van specifieke bestandstypen ingeschakeld.PSCleanBlock- Voegtcleanblok toe aan scriptblok als peer-tobegin,processenendom eenvoudig opschonen van resources mogelijk te maken.PSAMSIMethodInvocationLogging- Breidt de gegevens uit die naar AMSI worden verzonden voor inspectie om alle aanroepen van .NET-methodeleden op te nemen.PSNativeCommandArgumentPassing - PowerShell gebruikt nu de eigenschap ArgumentList van het StartProcessInfo-object in plaats van het oude mechanisme voor het reconstrueren van een tekenreeks bij het aanroepen van een systeemeigen uitvoerbaar bestand.
PowerShell 7.3.1 voegt toe
sqlcmd.exeaan de lijst met systeemeigen opdrachten in Windows die deLegacystijl van het doorgeven van argumenten gebruiken.PSExec- Voegt de nieuweSwitch-Processcmdlet (aliasexec) toe om compatibiliteit te biedenexecvoor niet-Windows-systemen.PowerShell 7.3.1 heeft de
execalias gewijzigd in een functie die wordt verpaktSwitch-Process. Met de functie kunt u parameters doorgeven aan de systeemeigen opdracht die mogelijk per ongeluk is gebonden aan de parameter WithCommand .
PowerShell 7.3 introduceert de volgende experimentele functies:
- 
              PSNativeCommandErrorActionPreference : voegt de 
$PSNativeCommandUseErrorActionPreferencevariabele toe om fouten in te schakelen die worden geproduceerd door systeemeigen opdrachten als PowerShell-fouten. 
PowerShell 7.3 heeft de volgende experimentele functies verwijderd:
- 
              
PSNativePSPathResolutionexperimentele functie wordt niet meer ondersteund. - 
              
PSStrictModeAssignmentexperimentele functie wordt niet meer ondersteund. 
Zie Experimentele functies gebruiken voor meer informatie over de experimentele functies.