Nếu bạn muốn chạy script Windows PowerShell đầu tiên khi người dùng đăng nhập, đăng xuất, khởi động, và tắt máy, đây là những gì bạn phải làm. Bạn có thể ưu tiên script Windows PowerShell trước script non-PowerShell bằng Local Group Policy Editor và Registry Editor.
Khi người dùng đăng nhập hoặc khởi động máy tính, tất cả script chạy cùng lúc. Nó có thể gây trễ khi khởi động hoặc chạy chương trình cụ thể. Thường cần chạy tất cả script Windows PowerShell và Group Policy Object trước script non-PowerShell.
Chạy Windows PowerShell scripts đầu tiên
Để chạy Windows PowerShell scripts đầu tiên khi user logon, logoff, startup, và shutdown, làm theo các bước:
- Nhấn Win+R.
- Gõ gpedit.msc và nhấn nút Enter.
- Đi đến Scripts trong Computer Configuration.
- Double-click vào Run Windows PowerShell scripts first at user logon, logoff.
- Chọn tùy chọn Enabled.
- Nhấp Apply và OK.
- Double-click vào Run Windows PowerShell scripts first at computer startup, shutdown.
- Chọn tùy chọn Enabled.
- Nhấp Apply và OK.
Hãy xem chi tiết các bước này.
Trước hết, bạn phải mở Local Group Policy Editor. Để làm vậy, nhấn Win+R, gõ gpedit.msc, và nhấn nút Enter. Sau khi mở, điều hướng đến đường dẫn sau:
Computer Configuration > Administrative Templates > System > Scripts
Bạn sẽ thấy hai thiết lập gọi là:
- Run Windows PowerShell scripts first at user logon, logoff (Chạy script PowerShell đầu tiên khi user đăng nhập, đăng xuất),
- Run Windows PowerShell scripts first at computer startup, shutdown (Chạy script PowerShell đầu tiên khi máy tính khởi động, tắt).
Double-click vào từng cái, và chọn tùy chọn Enabled.

Nhấp Apply và OK để lưu thay đổi.
Chạy Windows PowerShell scripts đầu tiên khi user logon, logoff, startup, shutdown bằng Registry Editor
Để chạy Windows PowerShell scripts đầu tiên khi user logon, logoff, startup, và shutdown bằng Registry Editor, làm theo các bước:
- Nhấn Win+R.
- Gõ regedit và nhấn nút Enter.
- Nhấp nút Yes.
- Đi đến System trong HKLM.
- Chuột phải vào System > New > DWORD (32-bit) Value.
- Đặt tên là RunUserPSScriptsFirst.
- Double-click vào nó và đặt Value data là 1.
- Nhấp OK.
- Chuột phải vào System > New > DWORD (32-bit) Value.
- Đặt tên là RunComputerPSScriptsFirst.
- Double-click vào nó để đặt Value data là 1.
- Nhấp OK để lưu thay đổi.
Để biết thêm, tiếp tục đọc.
Trước khi bắt đầu, khuyến nghị sao lưu tất cả file Registry và tạo System Restore point.
Nhấn Win+R để mở Run prompt, gõ regedit, và nhấn nút Enter. Nếu lời nhắc UAC xuất hiện, nhấp nút Yes. Sau đó, điều hướng đến đường dẫn này:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
Ở đây bạn phải tạo hai giá trị REG_DWORD. Để làm vậy, chuột phải vào System > New > DWORD (32-bit) Value và đặt tên là RunUserPSScriptsFirst.

Double-click vào nó và đặt Value data là 1.

Làm theo cùng bước để tạo DWORD (32-bit) Value khác và đặt tên là RunComputerPSScriptsFirst. Sau đó, đặt Value data là 1.
RunUserPSScriptsFirst đại diện cho thiết lập Run Windows PowerShell scripts first at user logon, logoff, trong khi RunComputerPSScriptsFirst định nghĩa thiết lập Run Windows PowerShell scripts first at computer startup, shutdown.
Trong trường hợp bạn muốn hoàn tác thay đổi, bạn có thể làm theo các bước sau.
Nếu bạn làm bằng Local Group Policy Editor, mở cùng đường dẫn và chọn tùy chọn Not Configured. Nếu bạn làm bằng Registry Editor, mở cùng khóa System và xóa hai giá trị REG_DWORD đó. Để xóa, chuột phải vào từng cái, chọn Delete, và xác nhận bằng cách nhấp OK.
Hy vọng hữu ích.
