Aracılığıyla paylaş


Windows PowerShell Ek Bileşeni Yazma

Bu örnekte, tüm cmdlet'leri ve Windows PowerShell sağlayıcılarını bir derlemeye kaydetmek için kullanılabilecek bir Windows PowerShell ek bileşeninin nasıl yazılacağı gösterilmektedir.

Bu tür bir ek bileşenle, hangi cmdlet'leri ve sağlayıcıları kaydetmek istediğinizi seçmezsiniz. Kayıtlı olanları seçmenize olanak tanıyan bir ek bileşen yazmak için bkz. Özel Windows PowerShell Ek Bileşeni Yazma.

Windows PowerShell Ek Bileşeni Yazma

  1. RunInstallerAttribute özniteliğini ekleyin.

  2. System.Management.Automation.PSSnapIn sınıfından türetilen bir genel sınıf oluşturun.

    Bu örnekte sınıf adı "GetProcPSSnapIn01" şeklindedir.

  3. Ek bileşenin adı için bir ortak özellik ekleyin (gerekli). Ek bileşenleri adlandırırken, şu karakterlerden hiçbirini kullanmayın: #, ., ,, (, ), {, }, [, ], &, -, /, \, $, ;, :, ", ', <, >, |, ?, @, `, *

    Bu örnekte, ek bileşenin adı "GetProcPSSnapIn01" şeklindedir.

  4. Ek bileşenin satıcısı için bir genel özellik ekleyin (gerekli).

    Bu örnekte satıcı "Microsoft" şeklindedir.

  5. Ek bileşenin satıcı kaynağı için bir genel özellik ekleyin (isteğe bağlı).

    Bu örnekte, satıcı kaynağı "GetProcPSSnapIn01,Microsoft" şeklindedir.

  6. Ek bileşenin açıklaması için bir ortak özellik ekleyin (gerekli).

    Bu örnekte açıklama "Bu, Get-Proc cmdlet'ini kaydeden bir Windows PowerShell ek bileşenidir".

  7. Ek bileşenin açıklama kaynağı için bir ortak özellik ekleyin (isteğe bağlı).

    Bu örnekte, satıcı kaynağı "GetProcPSSnapIn01,Bu, Get-Proc cmdlet'ini kaydeden bir Windows PowerShell ek bileşenidir".

Örnek

Bu örnekte, Get-Proc cmdlet'ini Windows PowerShell kabuğuna kaydetmek için kullanılabilecek bir Windows PowerShell ek bileşeninin nasıl yazılacağı gösterilmektedir. Bu örnekte, tüm derlemenin yalnızca GetProcPSSnapIn01 ek bileşeni sınıfını ve Get-Proc cmdlet sınıfını içereceğini unutmayın.

[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.";
    }
  }
}

Ayrıca Bkz.

Cmdlet'leri, Sağlayıcıları ve Konak Uygulamalarını Kaydetme

Windows PowerShell Shell SDK