Windows 7 Home: วิธีกำหนดค่าสคริปต์การเข้าสู่ระบบ


7

ใน Windows 7 Professional ผู้ใช้สามารถคลิกขวาที่ผู้ใช้ในการจัดการคอมพิวเตอร์ของผู้ใช้และกลุ่มเพื่อตั้งค่าสคริปต์การเข้าสู่ระบบบนแท็บโปรไฟล์ แต่น่าเสียดายที่ Windows 7 Home Premium ไม่ (ดูเหมือนจะ) มีผู้ใช้และกลุ่มในการจัดการคอมพิวเตอร์ วิธีกำหนดค่าสคริปต์การเข้าสู่ระบบใน Windows 7 Home Premium


1
ในระบบแบบสแตนด์อโลนมีประโยชน์ในการกำหนดค่าสคริปต์การเข้าสู่ระบบมากกว่าเพียงแค่วางไว้ในโฟลเดอร์เริ่มต้นหรือไม่
user1686

2
ข้อดีคือสคริปต์จะโหลดเร็วมากเช่นก่อนเปิดแอปพลิเคชันอื่น สิ่งนี้มีประโยชน์มากในการเมาต์พาร์ติชันที่เข้ารหัส
Mike L.

คำตอบ:


8

คุณพูดถูก MMC snap-in นี้ถูกปิดใช้งานเว้นแต่คุณมี Windows 7 (หรือ Vista) อย่างน้อยที่สุด

คุณควรจะสามารถกำหนดค่าคุณสมบัติของผู้ใช้โดยใช้คำสั่งnet user :

net user UserName /scriptpath:logon.bat

ตำแหน่งสคริปต์:

สคริปต์การเข้าสู่ระบบในเครื่องจะต้องเก็บไว้ในโฟลเดอร์ที่ใช้ร่วมกัน - หรือโฟลเดอร์ย่อยของโฟลเดอร์ที่ใช้ร่วมกัน - ชื่อ Netlogon หากโฟลเดอร์นี้ไม่มีอยู่ตามค่าเริ่มต้นคุณต้องสร้างขึ้น ในการระบุสคริปต์การเข้าสู่ระบบที่เก็บไว้ในโฟลเดอร์ย่อยของโฟลเดอร์ Netlogon ให้นำหน้าชื่อไฟล์ด้วยพา ธ สัมพัทธ์กับโฟลเดอร์นั้น ตัวอย่างเช่นการกำหนดสคริปต์การเข้าสู่ระบบ Startup.bat ที่เก็บไว้ใน \ ComputerName \ Netlogon \ FolderName ให้กับผู้ใช้ท้องถิ่นในประเภทสคริปต์ Logon FolderName \ Startup.bat


ไดเร็กทอรี "\ ComputerName \ Netlogon \ FolderName" อยู่ที่ไหน
Mike L.

1
@mklhmnn: ทุกที่ที่คุณต้องการ ตัวอย่างที่ให้ไว้สำหรับโดเมนโดยมีเซิร์ฟเวอร์หนึ่งตัวที่ถือสคริปต์ทั้งหมด ตัวควบคุมโดเมนมีส่วนแบ่ง\\servername\Netlogonสำหรับวัตถุประสงค์นี้ หากคุณให้เส้นทางสัมพัทธ์มันจะถูกมองหาในNetlogonส่วนแบ่งของ DC (พฤติกรรมที่ไม่รู้จักสำหรับระบบแบบสแตนด์อโลน.) C:\WINDOWS\Misc\logon.cmdแต่คุณสามารถให้เส้นทางที่แน่นอนเช่น
user1686

1
ทุกที่ที่คุณต้องการ - สร้างโฟลเดอร์ c: \ logon และแชร์เป็น Netlogon
Siim K

1
@grawity ใช้/scriptpath:pathคุณไม่สามารถใช้เส้นทางที่แน่นอน
Hanan N.

6

สรุปสิ่งที่ฉันทำเพื่อแก้ไขปัญหานี้:

  • ฉันได้สร้างสคริปต์ใน C:\Windows\System32\repl\import\scripts\<username>.bat
  • เรียก net user <username> /scriptpath:<username>.bat

เนื่องจาก Windows 7 Home ไม่ได้รอจนกว่าสคริปต์นี้ได้รับการเสร็จสิ้นแล้วและยังคงโหลดโปรแกรมอื่น ๆ ผมยังจำเป็นในการสร้างDWORDรายการชื่อRunLogonScriptSyncที่ในรีจิสทรีการตั้งค่าHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon1


1
มีวิธีการย้อนกลับคำสั่งนี้หรือไม่? อีกนัยหนึ่งคือปิดสคริปต์ที่คุณกำหนดให้กับโปรไฟล์ผู้ใช้หรือไม่
Radical924

3

คำตอบที่ได้รับการยอมรับคือวิธีที่จะทำถ้าคุณต้องการให้สคริปต์ของคุณทำงานในช่วงเริ่มต้นระบบหรือต้องการให้สคริปต์ทำงานแบบซิงโครนัสนั่นคือกระบวนการเข้าสู่ระบบปกติจะดำเนินการต่อหลังจากสคริปต์ของคุณเสร็จสิ้น สามารถชะลอการเข้าสู่ระบบใช้งานได้เฉพาะเมื่อคุณต้องการ)

หมายเหตุ: ฉันไม่แน่ใจว่าสคริปต์ดังกล่าวข้างต้นสามารถเป็น.exeไฟล์หรือไม่ แต่ในวิธีที่ฉันจะอธิบายใด ๆ ที่ปฏิบัติการสามารถใช้

Task Schedulerอีกวิธีหนึ่งที่จะทำซึ่งมีความยืดหยุ่นพิเศษบางอย่างที่จะใช้ จากเมนูเริ่มพิมพ์ Task Scheduler และเรียกใช้ (หรือเรียกใช้taskschd.mscจากRunกล่องโต้ตอบหรือเปลือก) เลือกTask Scheduler Libraryในมุมมองต้นไม้ หากคุณต้องการคุณสามารถสร้างโฟลเดอร์ย่อยพิเศษสำหรับโปรแกรมของคุณ แต่ไม่จำเป็น คลิกCreate Basic Task...(ตัวช่วยสร้าง) หรือCreate Task...ในActionsแผงด้านขวา

Create Task...ผมจะอธิบายวิธีการใช้งาน

  • ในGeneralแท็บให้กรอกชื่อที่เป็นคำอธิบายและอาจเป็นคำอธิบายสำหรับงานของคุณ
  • ในTriggersแท็บคลิกNew...ตั้งไปBegin the task At log onตรวจสอบSpecific usercombobox ตรวจสอบให้แน่ใจว่าได้เลือกชื่อผู้ใช้ของคุณแล้ว (คุณสามารถใช้Any userหากคุณต้องการให้โปรแกรมทำงานเมื่อผู้ใช้เข้าสู่ระบบ) หากคุณไม่ต้องการให้สคริปต์ของคุณช้าลงในขั้นตอนการเข้าสู่ระบบคุณสามารถเลือกที่จะรันมันหลังจากเกิดความล่าช้า - คลิกDelay task forช่องทำเครื่องหมายและพิมพ์ในเวลา (เช่น30 seconds) คลิกตกลงเพื่อสร้างทริกเกอร์
  • ในActionsแท็บคลิกNew...เลือกโปรแกรมของคุณ (หรือสคริปต์) โดยใช้หรือประเภทในเส้นทางแบบเต็มในBrowse... Program\programหากโปรแกรมที่อยู่ในเส้นทางของคุณ%% programคุณก็สามารถใช้ คุณอาจจะระบุข้อโต้แย้งใด ๆ Add argumentsที่จะส่งผ่านไปยังโปรแกรมใน Start inคุณอาจจะระบุไดเรกทอรีการทำงานสำหรับโปรแกรมใน คุณสามารถใช้สคริปต์ประเภทใดก็ได้ที่โลคัลคอมพิวเตอร์รองรับ หากประเภทของสคริปต์ไม่ได้ลงทะเบียนกับ Windows คุณสามารถใช้งานได้โดยระบุตัวแปลสคริปต์เป็นโปรแกรม เช่นใช้C:\path\to\python.exeเป็นโปรแกรมและC:\path\to\script.py some_argumentsเป็นอาร์กิวเมนต์ คลิกตกลงเพื่อสร้างการกระทำ
  • ในแท็บคุณอาจต้องการที่จะยกเลิกConditionsStart the task only if the computer is on AC power
  • ในSettingsแท็บไม่จำเป็นต้องเปลี่ยนอะไร

คลิกตกลงเพื่อสร้างงานที่กำหนดเวลาไว้ หากคุณต้องการแก้ไขในภายหลังเพียงเลือกTask Scheduler Libraryในมุมมองแบบต้นไม้ค้นหางานของคุณในรายการ (ที่ส่วนบนของหน้าต่าง) และดับเบิลคลิกที่งาน

ดูการอ้างอิง Task Schedulerสำหรับข้อมูลเพิ่มเติม


1

ฉันใช้ Win 7 Premium Home บนระบบสแตนด์อโลนและต้องการเรียกใช้สคริปต์การเข้าสู่ระบบเพื่อติดตั้งวอลลุ่มเข้ารหัส การค้นหาเน็ตให้ผลลัพธ์ที่ซับซ้อนเท่านั้น (gpedit การอัปเดตรีจิสทรี) วิธีการแก้ปัญหาของฉันง่ายมาก: ฉันสร้างบน C: โฟลเดอร์ (ด้วยชื่อตามที่คุณต้องการ) และใส่สคริปต์ของฉันลงไป โฟลเดอร์นี้จะต้องแชร์ด้วยชื่อการแชร์“ Netlogon” มันใช้งานได้! อย่างน้อยในระบบท้องถิ่นของฉัน


1

ระบบเกิดข้อผิดพลาด 5

การเข้าถึงถูกปฏิเสธ.

หากคุณได้รับข้อผิดพลาดเช่นนี้เมื่อรันคำสั่งnet userตรวจสอบให้แน่ใจว่าคุณเรียกใช้CMDในฐานะผู้ดูแลระบบ (ใช้คลิกขวาแล้วเลือก "Run as administrator")!


1

คุณสามารถสร้างงานโดยใช้ตัวกำหนดตารางเวลางานและตั้งค่าทริกเกอร์เพื่อเรียกใช้สคริปต์เมื่อเข้าสู่ระบบ


2
คำตอบนี้อาจได้รับการปรับปรุงโดยรวมถึงขั้นตอนและขั้นตอนที่เกี่ยวข้องในการกำหนดค่าสคริปต์ให้ทำงานในตัวกำหนดตารางเวลางาน
จะ

1

คุณยังคงใช้ UI เพื่อกำหนดค่าสคริปต์การเข้าสู่ระบบใน Windows 7

เปิด"Control Panel" -> "User Accounts" -> "User Accounts" -> "Manage User Accounts" -> "Advanced" -> "Advanced"เพื่อเข้าถึงสแน็ปอิน MMC ของ "ผู้ใช้และกลุ่ม (ท้องถิ่น)"

หรือเพียงแค่เปิดตัวจากเปลือก cmd: mmc.exe %SystemRoot%\system32\lusrmgr.msc computername=localmachine

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.