Sdílet prostřednictvím


Vytvoření modulu snap-in Windows PowerShellu

Tento příklad ukazuje, jak napsat modul snap-in Prostředí Windows PowerShell, který se dá použít k registraci všech rutin a zprostředkovatelů Windows PowerShellu v sestavení.

U tohoto typu modulu snap-in nevyberete, které rutiny a zprostředkovatele chcete zaregistrovat. Pokud chcete napsat modul snap-in, který umožňuje vybrat zaregistrované položky, přečtěte si téma Zápis vlastního modulu snap-in Windows PowerShellu.

Vytvoření modulu snap-in Windows PowerShellu

  1. Přidejte atribut RunInstallerAttribute.

  2. Vytvořte veřejnou třídu, která je odvozena z System.Management.Automation.PSSnapIn třídy.

    V tomto příkladu je název třídy GetProcPSSnapIn01.

  3. Přidejte veřejnou vlastnost pro název modulu snap-in (povinné). Při pojmenování modulů snap-in, Nepoužívejte žádný z následujících znaků: #, ., ,, (, ), {, }, [, ], &, -, /}, \, $, ;, :, ", ', <, >, |, ?, @, `, *

    V tomto příkladu je název modulu snap-in GetProcPSSnapIn01.

  4. Přidejte veřejnou vlastnost pro dodavatele modulu snap-in (povinné).

    V tomto příkladu je dodavatel Microsoft.

  5. Přidejte veřejnou vlastnost pro prostředek dodavatele modulu snap-in (volitelné).

    V tomto příkladu je prostředek dodavatele GetProcPSSnapIn01, Microsoft.

  6. Přidejte veřejnou vlastnost pro popis modulu snap-in (povinné).

    V tomto příkladu je popis "Toto je modul snap-in Windows PowerShellu, který zaregistruje rutinu Get-Proc".

  7. Přidejte veřejnou vlastnost pro prostředek popisu modulu snap-in (volitelné).

    V tomto příkladu je prostředek dodavatele GetProcPSSnapIn01, jedná se o modul snap-in Windows PowerShellu, který zaregistruje rutinu Get-Proc.

Příklad

Tento příklad ukazuje, jak napsat modul snap-in Prostředí Windows PowerShell, který se dá použít k registraci rutiny Get-Proc v prostředí Windows PowerShell. Uvědomte si, že v tomto příkladu by úplné sestavení obsahovalo pouze třídu snap-in GetProcPSSnapIn01 a třídu rutiny Get-Proc.

[RunInstaller(true)]
public class GetProcPSSnapIn01 : PSSnapIn
{
  /// <summary>
  /// Create an instance of the GetProcPSSnapIn01 class.
  /// </summary>
  public GetProcPSSnapIn01()
         : base()
  {
  }

  /// <summary>
  /// Specify the name of the PowerShell snap-in.
  /// </summary>
  public override string Name
  {
    get
    {
      return "GetProcPSSnapIn01";
    }
  }

  /// <summary>
  /// Specify the vendor for the PowerShell snap-in.
  /// </summary>
  public override string Vendor
  {
    get
    {
      return "Microsoft";
    }
  }

  /// <summary>
  /// Specify the localization resource information for the vendor.
  /// Use the format: resourceBaseName,VendorName.
  /// </summary>
  public override string VendorResource
  {
    get
    {
      return "GetProcPSSnapIn01,Microsoft";
    }
  }

  /// <summary>
  /// Specify a description of the PowerShell snap-in.
  /// </summary>
  public override string Description
  {
    get
    {
      return "This is a PowerShell snap-in that includes the Get-Proc cmdlet.";
    }
  }

  /// <summary>
  /// Specify the localization resource information for the description.
  /// Use the format: resourceBaseName,Description.
  /// </summary>
  public override string DescriptionResource
  {
    get
    {
      return "GetProcPSSnapIn01,This is a PowerShell snap-in that includes the Get-Proc cmdlet.";
    }
  }
}

Viz také

registrace rutin, poskytovatelů a hostitelských aplikací

windows PowerShell Shell SDK