共用方式為


Unregister-Event

取消事件訂閱。

語法

Unregister-Event
          [-SourceIdentifier] <String>
          [-Force]
          [-WhatIf]
          [-Confirm]
          [<CommonParameters>]
Unregister-Event
          [-SubscriptionId] <Int32>
          [-Force]
          [-WhatIf]
          [-Confirm]
          [<CommonParameters>]

Description

Unregister-Event Cmdlet 會取消使用 Register-EngineEventRegister-ObjectEventRegister-WmiEvent Cmdlet 所建立的事件訂閱。

取消事件訂閱時,事件訂閱者會從會話中刪除,而且訂閱的事件不再新增至事件佇列。 當您取消使用 New-Event Cmdlet 建立之事件的訂用帳戶時,也會從會話中刪除新的事件。

Unregister-Event 不會從事件佇列中刪除事件。 若要刪除事件,請使用 Remove-Event Cmdlet。

範例

範例 1:依來源標識碼取消事件訂閱

PS C:\> Unregister-Event -SourceIdentifier "ProcessStarted"

此命令會取消具有 ProcessStarted 來源標識碼的事件訂閱。

若要尋找事件的來源標識碼,請使用 Get-Event Cmdlet。 若要尋找事件訂用帳戶的來源標識符,請使用 Get-EventSubscriber Cmdlet。

範例 2:依訂用帳戶標識碼取消事件訂閱

PS C:\> Unregister-Event -SubscriptionId 2

此命令會取消具有訂用帳戶標識碼為 2 的事件訂閱。

若要尋找事件訂用帳戶的訂用帳戶標識碼,請使用 Get-EventSubscriber Cmdlet。

範例 3:取消所有事件訂閱

PS C:\> Get-EventSubscriber -Force | Unregister-Event -Force

此命令會取消會話中的所有事件訂閱。

命令會使用 Get-EventSubscriber Cmdlet 來取得工作階段中的所有事件訂閱者物件,包括使用事件註冊 Cmdlet SupportEvent 參數隱藏的訂閱者。

它會使用管線運算符 (|) 將訂閱者對象傳送至 Unregister-Event,這會從會話中刪除它們。 若要完成工作,Unregister-Event上也需要 Force 參數。

參數

-Confirm

在執行 Cmdlet 之前,提示您進行確認。

類型:SwitchParameter
別名:cf
Position:Named
預設值:False
必要:False
接受管線輸入:False
接受萬用字元:False

-Force

取消所有事件訂閱,包括使用 Register-ObjectEventRegister-WmiEventRegister-EngineEventSupportEvent 參數隱藏的訂用帳戶。

類型:SwitchParameter
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-SourceIdentifier

指定此 Cmdlet 取消事件訂閱的來源識別碼。

SourceIdentifierSubscriptionId 參數必須包含在每個命令中。

類型:String
Position:0
預設值:None
必要:True
接受管線輸入:True
接受萬用字元:False

-SubscriptionId

指定此 Cmdlet 取消事件訂閱的來源識別碼。

SourceIdentifierSubscriptionId 參數必須包含在每個命令中。

類型:Int32
Position:0
預設值:None
必要:True
接受管線輸入:True
接受萬用字元:False

-WhatIf

顯示 Cmdlet 執行時會發生什麼事。 Cmdlet 未執行。

類型:SwitchParameter
別名:wi
Position:Named
預設值:False
必要:False
接受管線輸入:False
接受萬用字元:False

輸入

PSEventSubscriber

您可以使用管線將輸出從 Get-EventSubscriber 傳送至 Unregister-Event

輸出

None

此 Cmdlet 不會傳回任何輸出。

備註

Linux 或macOS平台上沒有可用的事件來源。

事件、事件訂閱和事件佇列只存在於目前的會話中。 如果您關閉目前的會話,則會捨棄事件佇列,並取消事件訂閱。

除非您已使用 Register-EngineEvent Cmdlet 訂閱事件,否則 Unregister-Event 無法刪除使用 New-Event Cmdlet 所建立的事件。 若要從工作階段中刪除自訂事件,您必須以程式設計方式移除自定義事件或關閉作業階段。