การต่อท้ายสคริปต์ Python กับการเริ่มต้น windows โดยทั่วไปบ่งชี้ว่าสคริปต์ python จะทำงานเมื่อ windows บูทขึ้น สามารถทำได้โดยกระบวนการสองขั้นตอน -
ขั้นตอนที่ #1:การต่อท้ายหรือเพิ่มสคริปต์ไปยังโฟลเดอร์เริ่มต้นของ windows
หลังจากการบูทของ windows มันรัน (เทียบเท่ากับการดับเบิลคลิก) แอปพลิเคชั่นทั้งหมดที่อยู่ในโฟลเดอร์หรือไดเร็กทอรีเริ่มต้น
ที่อยู่
C:\Users\current_user\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\
ตามค่าเริ่มต้น ไดเร็กทอรีหรือโฟลเดอร์ AppData ภายใต้ current_user จะถูกซ่อนไว้ ซึ่งเปิดใช้งานไฟล์ที่ซ่อนอยู่เพื่อรับมัน และวางทางลัดของสคริปต์ในที่อยู่ที่กำหนดหรือตัวสคริปต์เอง นอกจากนี้ ค่าเริ่มต้นของไฟล์ .PY จะต้องตั้งค่าเป็น python IDE มิฉะนั้น สคริปต์อาจเปิดขึ้นเป็นข้อความแทนที่จะดำเนินการ
ขั้นตอน #2:การต่อท้ายหรือเพิ่มสคริปต์ใน Windows Registry
กระบวนการนี้อาจมีความเสี่ยงหากไม่สำเร็จอย่างถูกต้อง ซึ่งรวมถึงการแก้ไขคีย์รีจิสทรีของ Windows HKEY_CURRENT_USER จากสคริปต์หลามเอง รีจิสทรีนี้ประกอบด้วยรายการโปรแกรมที่ต้องดำเนินการเมื่อผู้ใช้เข้าสู่ระบบ เส้นทางรีจิสทรี −
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
ด้านล่างคือโค้ด 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()