Computer >> Máy Tính >  >> Lập trình >> Python

Tự động chạy một tập lệnh Python khi khởi động windows?

Việc thêm một tập lệnh Python vào khởi động cửa sổ về cơ bản chỉ ra rằng tập lệnh python sẽ chạy khi cửa sổ khởi động. Điều này có thể được thực hiện bằng quy trình hai bước -

Bước # 1:Thêm hoặc thêm tập lệnh vào thư mục Khởi động windows

Sau khi khởi động cửa sổ, nó thực thi (tương đương với việc nhấp đúp) vào tất cả ứng dụng có trong thư mục hoặc thư mục khởi động của nó.

Địa chỉ

C:\Users\current_user\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\

Theo mặc định, thư mục AppData hoặc thư mục trong current_user được ẩn cho phép các tệp ẩn lấy nó và dán lối tắt của tập lệnh vào địa chỉ đã cho hoặc chính tập lệnh đó. Bên cạnh đó, tệp .PY mặc định phải được đặt thành Python IDE nếu không, tập lệnh có thể kết thúc mở dưới dạng văn bản thay vì thực thi.

Bước # 2:Thêm hoặc thêm tập lệnh vào Windows Registry

Quá trình này có thể gặp rủi ro nếu không được thực hiện đúng cách, nó bao gồm việc chỉnh sửa khóa đăng ký cửa sổ HKEY_CURRENT_USER từ chính tập lệnh python. Sổ đăng ký này bao gồm danh sách các chương trình phải thực thi khi người dùng Đăng nhập. Đường dẫn đăng ký -

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run

Dưới đây là mã Python

# Python code to append or add current script to the registry
# module to modify or edit the windows registry
importwinreg as reg1
importos

defAddToRegistry () -

   # in python __file__ is denoeted as the instant of
   # file path where it was run or executed
   # so if it was executed from desktop,
   # then __file__ will be
   # c:\users\current_user\desktop
   pth1 =os.path.dirname(os.path.realpath(__file__))
   # Python file name with extension
   s_name1="mYscript.py"
   # The file name is joined to end of path address
   address1=os.join(pth1,s_name1)
   # key we want to modify or change is HKEY_CURRENT_USER
   # key value is Software\Microsoft\Windows\CurrentVersion\Run
   key1 =HKEY_CURRENT_USER
   key_value1 ="Software\Microsoft\Windows\CurrentVersion\Run"
   # open the key to make modifications or changes to
   open=reg1.OpenKey(key1,key_value1,0,reg1.KEY_ALL_ACCESS)
   # change or modifiy the opened key
   reg1.SetValueEx(open,"any_name",0,reg1.REG_SZ,address1)
   # now close the opened key
   reg1.CloseKey(open)
# Driver Code
if__name__=="__main__":
AddToRegistry()