取消事件訂閱。
語法
Unregister-Event [-SubscriptionId] <int> [-Force] [-Confirm] [-WhatIf] [<CommonParameters>] Unregister-Event [-SourceIdentifier] <string> [-Force] [-Confirm] [-WhatIf] [<CommonParameters>]
描述
Unregister-Event Cmdlet 會取消使用 Register-EngineEvent、Register-ObjectEvent 或 Register-WmiEvent Cmdlet 所建立的事件訂閱。
取消事件訂閱時,會從工作階段刪除事件訂閱者,而已訂閱的事件無法再新增到事件佇列。取消以 New-Event Cmdlet 所建立的事件訂閱時,也會從工作階段刪除新的事件。
Unregister-Event 不會從事件佇列刪除事件。若要刪除事件,請使用 Remove-Event Cmdlet。
參數
-Force
取消所有事件訂閱,包括已經使用 Register-ObjectEvent、Register-WmiEvent 和 Register-EngineEvent 的 SupportEvent 參數隱藏的事件訂閱。
必要? |
false |
位置? |
named |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
-SourceIdentifier <string>
取消有指定的來源識別元的事件訂閱。
每一個命令都需要有 SourceIdentifier 或 SubscriptionId 參數。
必要? |
true |
位置? |
1 |
預設值 |
|
接受管線輸入? |
true (ByPropertyName) |
接受萬用字元? |
false |
-SubscriptionId <int>
取消有指定的訂閱識別元的事件訂閱。
每一個命令都需要有 SourceIdentifier 或 SubscriptionId 參數。
必要? |
true |
位置? |
1 |
預設值 |
|
接受管線輸入? |
true (ByPropertyName) |
接受萬用字元? |
false |
-Confirm
在執行命令前先提示確認。
必要? |
false |
位置? |
named |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
-WhatIf
說明執行命令時將會發生何種情況,但不會實際執行命令。
必要? |
false |
位置? |
named |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
<CommonParameters>
這個 Cmdlet 支援一般參數:-Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer 和 -OutVariable。如需詳細資訊,請參閱 about_Commonparameters.
輸入和輸出
輸入型別是可經由管道輸出至 Cmdlet 的物件型別。傳回型別則是 Cmdlet 所傳回的物件型別。
輸入 |
System.Management.Automation.PSEventSubscriber 您可經由管道將輸出從 Get-EventSubscriber 輸出至 Unregister-Event。 |
輸出 |
無 這個 Cmdlet 不會傳回任何輸出。 |
附註
事件、事件訂閱和事件佇列只存在於目前的工作階段中。如果關閉目前的工作階段,則會捨棄事件佇列並取消事件訂閱。
除非您已經使用 Register-EngineEvent Cmdlet 訂閱事件,否則 Unregister-Event 無法刪除以 New-Event Cmdlet 所建立的事件。若要從工作階段刪除自訂事件,必須以程式設計方式將它移除或關閉工作階段。
範例 1
C:\PS>unregister-event -sourceIdentifier ProcessStarted 描述 ----------- 這個命令會取消來源識別元為 "ProcessStarted" 的事件訂閱。 若要找出事件的來源識別元,請使用 Get-Event Cmdlet。若要找出事件訂閱的來源識別元,請使用 Get-EventSubscriber Cmdlet。
範例 2
C:\PS>unregister-event -subscriptionId 2 描述 ----------- 這個命令會取消訂閱識別元為 2 的事件訂閱。 若要找出事件訂閱的訂閱識別元,請使用 Get-EventSubscriber Cmdlet。
範例 3
C:\PS>get-eventsubscriber -force | unregister-event -force 描述 ----------- 這個命令會取消工作階段中的所有事件訂閱。 該命令會使用 Get-EventSubscriber Cmdlet 取得工作階段中的所有事件訂閱者物件,包括已經使用事件註冊 Cmdlet 的 SupportEvent 參數隱藏的訂閱者。 它會使用管線運算子 (|) 將訂閱者物件傳送給 Unregister-Event,讓後者從工作階段中刪除這些物件。Unregister-Event 也需要有 Force 參數,才能完成工作。
請參閱