Unregister-Event
取消活動訂閱。
語法
BySource (預設值)
Unregister-Event
[-SourceIdentifier] <String>
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
ById
Unregister-Event
[-SubscriptionId] <Int32>
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
該 Unregister-Event cmdlet 會取消使用 Register-EngineEvent、 Register-ObjectEvent或 Register-WmiEvent 指令碼所建立的事件訂閱。
當活動訂閱被取消時,該活動訂閱者會從會話中刪除,且已訂閱的事件不再加入事件佇列。 當你取消使用 New-Event cmdlet 建立的事件訂閱時,該新事件也會從會話中刪除。
Unregister-Event 不會從事件佇列中刪除事件。 要刪除事件,請使用指令碼。Remove-Event
範例
範例 1:依來源識別碼取消活動訂閱
此指令會取消來源識別碼為 ProcessStart 的事件訂閱。
Unregister-Event -SourceIdentifier "ProcessStarted"
要找到事件的來源識別碼,請使用 Get-Event cmdlet。 要找到事件訂閱的來源識別碼,請使用 Get-EventSubscriber cmdlet
範例 2:依訂閱識別碼取消活動訂閱
此指令會取消訂閱識別碼為 2 的事件訂閱。
Unregister-Event -SubscriptionId 2
要查找活動訂閱的訂閱識別碼,請使用 Get-EventSubscriber cmdlet。
範例三:取消所有活動訂閱
此範例會取消該會話中的所有活動訂閱。
Get-EventSubscriber -Force | Unregister-Event -Force
使用 Force 參數 和 Get-EventSubscriber 可以取得會話中所有事件訂閱者物件,包括隱藏的訂閱者。 輸出會被 pipe 傳送到 Unregister-Event,這樣會刪除該會話中的訂閱者。 強制 參數必須 開啟 Unregister-Event 以移除任何隱藏的訂閱者。
參數
-Confirm
在執行 Cmdlet 之前,提示您進行確認。
參數屬性
| 類型: | SwitchParameter |
| 預設值: | False |
| 支援萬用字元: | False |
| 不要顯示: | False |
| 別名: | 參見 |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-Force
取消所有事件訂閱,包括使用SupportEvent 參數Register-ObjectEventRegister-WmiEventRegister-EngineEvent隱藏的訂閱。
參數屬性
| 類型: | SwitchParameter |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-SourceIdentifier
指定一個來源識別碼,該指令子會取消事件訂閱。
每個指令都必須包含 SourceIdentifier 或 SubscriptionId 參數。
參數屬性
| 類型: | String |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
BySource
| Position: | 0 |
| 必要: | True |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | True |
| 來自剩餘引數的值: | False |
-SubscriptionId
指定一個來源識別碼 ID,該指令子會取消事件訂閱。
每個指令都必須包含 SourceIdentifier 或 SubscriptionId 參數。
參數屬性
| 類型: | Int32 |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ById
| Position: | 0 |
| 必要: | True |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | True |
| 來自剩餘引數的值: | False |
-WhatIf
顯示 Cmdlet 執行時會發生什麼事。 指令未執行。
參數屬性
| 類型: | SwitchParameter |
| 預設值: | False |
| 支援萬用字元: | False |
| 不要顯示: | False |
| 別名: | 威斯康辛 |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
CommonParameters
此 cmdlet 支援常見參數:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 如需詳細資訊,請參閱 about_CommonParameters。
輸入
PSEventSubscriber
你可以把輸出 Get-EventSubscriber 輸出管道傳送到這個 cmdlet。
輸出
None
此 Cmdlet 不會傳回任何輸出。
備註
Linux 或 macOS 平台沒有事件來源。
事件、事件訂閱和事件佇列只存在於當前會話中。 如果您關閉當前的會話,事件佇列將被丟棄,事件訂閱將被取消。
Unregister-Event除非你已經訂閱了使用Register-EngineEvent該 cmdlet 的事件,否則無法刪除使用 New-Event cmdlet 所產生的事件。 若要刪除會話中的自訂事件,必須以程式方式移除或關閉會話。