about_PSSnapins

Aggiornamento: maggio 2014

Si applica a: Windows PowerShell 2.0, Windows PowerShell 3.0, Windows PowerShell 4.0, Windows PowerShell 5.0

ARGOMENTO

about_PSSnapins

DESCRIZIONE BREVE

Questo articolo descrive gli snap-in di Windows PowerShell e spiega come usarli e gestirli.

DESCRIZIONE LUNGA

Uno snap-in Windows PowerShell consiste in un assembly di Microsoft .NET Framework che contiene i provider e/o i cmdlet di Windows PowerShell. Windows PowerShell include un set di snap-in di base, ma è possibile aumentare la potenza e il valore di Windows PowerShell aggiungendo snap-in contenenti provider e cmdlet creati dall'utente o ottenuti da terzi.

Quando si aggiunge uno snap-in, i cmdlet e i provider contenuti vengono resi immediatamente disponibili per la sessione corrente, ma la modifica interessa soltanto tale sessione.

Per aggiungere lo snap-in a tutte le sessioni future, salvarlo nel profilo Windows PowerShell. È anche possibile usare il cmdlet Export-Console per salvare i nomi dello snap-in in un file della console. In seguito, è possibile usarlo nelle sessioni future. È possibile, inoltre, salvare più file della console, ciascuno con un set diverso di snap-in.

Nota

Gli snap-in di Windows PowerShell (PSSnapins) sono disponibili in Windows PowerShell 3.0 e Windows PowerShell 2.0. Potrebbero essere modificati o non disponibili nelle versioni successive. Per creare un pacchetto di cmdlet e provider di Windows PowerShell, usare i moduli. Per informazioni sulla creazione di moduli e la conversione di snap-in in moduli, vedere la pagina che spiega come scrivere un modulo di Windows PowerShell in MSDN all'indirizzo https://go.microsoft.com/fwlink/p/?LinkID=141556.

RICERCA DI SNAP-IN

Per visualizzare un elenco di snap-in di Windows PowerShell nel computer in uso, digitare:

       get-pssnapin

Per visualizzare lo snap-in per ogni provider di Windows PowerShell, digitare:

        get-psprovider | format-list name, pssnapin

Per visualizzare un elenco dei cmdlet compresi in uno snap-in di Windows PowerShell, digitare:

        get-command -module <snap-in_name>

INSTALLAZIONE DELLO SNAP-IN

Gli snap-in predefiniti sono registrati nel sistema e aggiunti alla sessione predefinita quando si avvia Windows PowerShell. Tuttavia, è necessario registrare gli snap-in creati oppure ottenuti da terzi, quindi aggiungerli alla sessione.

REGISTRAZIONE DI UNO SNAP-IN

Uno snap-in di Windows PowerShell consiste in un programma scritto in un linguaggio di .NET Framework che viene compilato in un file DLL. Per usare cmdlet e provider in uno snap-in, è necessario innanzitutto registrare lo snap-in aggiungendolo al Registro di sistema.

La maggior parte degli snap-in include un programma di installazione (file con estensione exe o msi) che registra il file con estensione dll per conto dell'utente. Tuttavia, se si riceve uno snap-in come file dll, è possibile registrarlo nel sistema. Per altre informazioni, vedere l'argomento relativo alla registrazione di cmdlet, provider e applicazioni host in MSDN (Microsoft Developer Network) Library all'indirizzo https://go.microsoft.com/fwlink/?LinkID=143619.

Per visualizzare tutti gli snap-in registrati nel sistema o per verificare che uno snap-in sia stato registrato, digitare:

       get-pssnapin -registered

AGGIUNTA DI SNAP-IN ALLA SESSIONE CORRENTE

Per aggiungere uno snap-in registrato alla sessione corrente, usare il cmdlet Add-PsSnapin. Ad esempio, per aggiungere lo snap-in di Microsoft SQL Server alla sessione, digitare:

       add-pssnapin sql

Una volta completato il comando, i provider e cmdlet dello snap-in sono disponibili nella sessione. Tuttavia, se non vengono salvati restano disponibili soltanto per la sessione corrente.

SALVATAGGIO DEGLI SNAP-IN

Per usare uno snap-in di Windows PowerShell nelle sessioni future, aggiungere il comando Add-PsSnapin al profilo Windows PowerShell. In alternativa, esportare i nomi di snap-in un file di console.

Una volta aggiunto al profilo, il comando Add-PSSnapin è disponibile in tutte le sessioni successive di Windows PowerShell. Se si esportano i nomi degli snap-in nella sessione, è possibile usare il file di esportazione soltanto quando gli snap-in sono necessari.

Per aggiungere il comando Add-PsSnapin al profilo di Windows PowerShell, aprire il profilo, incollare o digitare il comando, quindi salvare il profilo. Per altre informazioni, vedere about_Profiles.

Per salvare gli snap-in di una sessione in un file della console (psc1), usare il cmdlet Export-Console. Ad esempio, per salvare gli snap-in presenti nella configurazione della sessione corrente nel file NewConsole.psc1 della directory corrente, digitare:

Inserire il corpo della sezione qui.

       export-console NewConsole

Per altre informazioni, vedere Export-Console.

APERTURA DI WINDOWS POWERSHELL CON UN FILE DI CONSOLE

Per usare un file di console che include lo snap-in, avviare Windows PowerShell (PowerShell.exe) dal prompt dei comandi in Cmd.exe oppure in un'altra sessione di Windows PowerShell. Usare il parametro PsConsoleFile per specificare il file di console che include lo snap-in. Ad esempio, il comando seguente consente di avviare Windows PowerShell con il file di console NewConsole.psc1:

       PowerShell.exe -psconsolefile NewConsole.psc1

I provider e i cmdlet nello snap-in sono ora disponibili nella sessione.

ELIMINAZIONE DI UNO SNAP-IN

Per eliminare uno snap-in di Windows PowerShell dalla sessione corrente, usare il cmdlet Remove-PsSnapin. Ad esempio, per eliminare lo snap-in di SQL Server dalla sessione corrente, digitare: Inserire qui il corpo del testo.

       remove-pssnapin sql

Il cmdlet rimuove lo snap-in dalla sessione. Lo snap-in viene comunque caricato, ma i provider e i cmdlet che supporta non sono più disponibili.

COMANDI PREDEFINITI

In Windows PowerShell 2.0 e in applicazioni host meno recenti di Windows PowerShell 3.0 e versioni successive, i comandi predefiniti che vengono installati con Windows PowerShell sono compressi in snap-in che vengono aggiunti automaticamente a ogni sessione di Windows PowerShell.

A partire da Windows PowerShell 3.0 nei programmi host in stile più recente, quelli che avviano le sessioni tramite il metodo InitialSessionState.CreateDefault2, i comandi predefiniti sono compressi in moduli. L'eccezione è Microsoft.PowerShell.Core, che viene sempre visualizzato come snap-in e viene incluso in ogni sessione per impostazione predefinita. I moduli predefiniti vengono caricati automaticamente al primo utilizzo.

Nota

le sessioni remote, tra cui quelle avviate con il cmdlet New-PSSession, sono versioni meno recenti in cui i comandi predefiniti vengono inseriti in pacchetti di snap-in.

  • Microsoft.PowerShell.Core
    Contiene i provider e i cmdlet usati per gestire le funzionalità di base di Windows PowerShell. Include i provider FileSystem, Registry, Alias, Environment, Function e Variable, nonché i cmdlet di base come Get-Help Get-Command e Get-History.
  • Microsoft.PowerShell.Host
    Contiene i cmdlet usati dall'host di Windows PowerShell, ad esempio, Start-Transcript e Stop-Transcript.
  • Microsoft.PowerShell.Management
    Contiene cmdlet come Get-Service e Get-ChildItem, che vengono usati per gestire le funzionalità basate su Windows.
  • Microsoft.PowerShell.Security
    Contiene l'autorità di certificazione e i cmdlet usati per gestire la sicurezza di Windows PowerShell, ad esempio Get-Acl, Get-AuthenticodeSignature e ConvertTo-SecureString.
  • Microsoft.PowerShell.Utility
    Contiene i cmdlet usati per manipolare oggetti e dati, ad esempio Get-Member, Write-Host e Format-List.
  • Microsoft.WSMan.Management
    Contiene il provider e i cmdlet WSMan che gestiscono il servizio Gestione remota Windows, ad esempio Connect-WSMan e Enable-WSManCredSSP.

REGISTRAZIONE EVENTI DEGLI SNAP-IN

A partire da Windows PowerShell 3.0 è possibile registrare gli eventi di esecuzione per i cmdlet in moduli e snap-in di Windows PowerShell impostando la proprietà LogPipelineExecutionDetails di moduli e snap-in su TRUE. Per altre informazioni, vedere about_EventLogs (https://go.microsoft.com/fwlink/?LinkID=113224).

VEDERE ANCHE

Add-PsSnapin

Get-PsSnapin

Remove-PsSnapin

Export-Console

Get-Command

about_Profiles

about_Modules

PAROLE CHIAVE: about_Snapins, about_Snap_ins, about_Snap-ins