使用者登入、登出時先執行 Windows PowerShell 指令碼

原則 ID
Run_User_PS_Scripts_First
適用範圍
電腦設定、使用者設定
支援的作業系統
至少需要 Windows Server 2008 R2 或 Windows 7
來源
Administrative Templates (.admx) for Windows 11 2026 Update (26H2) (版本 1.0)
類別
系統 › 指令碼

說明

這個原則設定會決定使用者登入和登出時,是否先執行 Windows PowerShell 指令碼後,再執行非 Windows PowerShell 指令碼。根據預設,Windows PowerShell 指令碼會在非 Windows PowerShell 指令碼之後執行。

如果您啟用這個原則設定,在使用者登入和登出時,每個適用的原則群組物件 (GPO) 中的 Windows PowerShell 指令碼會在非 Windows PowerShell 指令碼之前執行。

例如,假設有下列案例:

有三個 GPO (GPO A、GPO B 和 GPO C)。GPO A 會啟用這個原則設定。

GPO B 和 GPO C 包含以下使用者登入指令碼:

GPO B: B.cmd、B.ps1
GPO C: C.cmd、C.ps1

同時假設目前有兩位使用者,Qin Hong 和 Tamara Johnston。
Qin 已經套用 GPO A、GPO B 和 GPO C。因此,GPO B 和 C 的指令碼會按照以下順序,針對 Qin 執行:

在 GPO B 中: B.ps1、B.cmd
在 GPO C 中: C.ps1、C.cmd

至於 Tamara 套用了 GPO B 和 C,但沒有套用 GPO A。因此,GPO B 和 C 的指令碼會按照以下順序,針對 Tamara 執行:

在 GPO B 中: B.cmd、B.ps1
在 GPO C 中: C.cmd、C.ps1

注意: 這個原則設定會決定所有可用的 GPO 中,使用者登入和登出指令碼的執行順序。您可以設定 GPO 的以下原則設定,即可為特定 GPO 中,特定類型的指令碼覆寫這個原則設定:

使用者設定\原則\Windows 設定\指令碼 (啟動/關機)\登入
使用者設定\原則\Windows 設定\指令碼 (啟動/關機)\登出

這個原則設定會顯示在 [電腦設定] 資料夾以及 [使用者設定] 資料夾。在 [電腦設定] 中設定之原則設定的優先順序高於在 [使用者設定] 中設定的設定值。

登錄

電腦HKEY_LOCAL_MACHINE
  • RunUserPSScriptsFirstREG_DWORD
使用者HKEY_CURRENT_USER
  • RunUserPSScriptsFirstREG_DWORD

同一類別的其他原則

檢視此類別的所有原則 (5)