วิธีการเรียกใช้โปรแกรมที่มีสิทธิ์ผู้ดูแลระบบในการเข้าสู่ระบบของผู้ใช้ภายใต้ Windows?


11

ฉันใช้ Windows 8.1 x64 และฉันต้องการเรียกใช้โปรแกรมที่มีสิทธิ์ผู้ดูแลระบบในการเข้าสู่ระบบของผู้ใช้

ฉันพยายามสร้างทางลัดของโปรแกรมและทำเครื่องหมาย "เรียกใช้ในฐานะผู้ดูแลระบบ" ในคุณสมบัติของทางลัดหรือโปรแกรมของตัวเองและวางทางลัดไว้ในC:\Users\MyUser\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\StartupหรือC:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUpแต่การทำเครื่องหมายในช่องทำไม่ถูกต้อง

จากนั้นฉันแก้ไขโปรแกรมโดย Resource Hacker เพื่อแก้ไขรายการเพื่อให้ต้องการสิทธิ์ผู้ดูแลระบบสำหรับโปรแกรมนี้ สิ่งนี้ทำให้ทางลัดภายใต้ไดเรกทอรีเริ่มต้นไม่ถูกต้อง ดังนั้นหลังจากนี้ฉันพยายามเพิ่มโปรแกรมHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Runแต่ก็ไม่ได้ผล

ฉันจะเรียกใช้โปรแกรมด้วยสิทธิ์ระดับผู้ดูแลระบบในการเข้าสู่ระบบของผู้ใช้ได้อย่างไร


เริ่มต้นสคริปต์ที่ใช้runas
Ramhound

@Ramhound คุณหมายถึงการเขียนแบทช์ที่มีเนื้อหาอยู่runas /env /user:domain\Administrator X:\path\to\the\program.exeและวางไว้ในไดเรกทอรีเริ่มต้นอัตโนมัติหรือไม่
เฟรดเดอริกจาง

คุณสามารถใช้อะไรก็ได้ที่คุณต้องการเรียกใช้คำสั่งนั้น ไม่จำเป็นต้องเป็นสคริปต์แบบแบตช์
Ramhound

1
@Ramhound แต่คำสั่งนี้จะถามรหัสผ่านที่ฉันไม่ต้องการ
Frederick Zhang

คุณสามารถใช้runasและบันทึกข้อมูลประจำตัวของผู้ดูแลระบบแม้ว่าจะมีความเสี่ยงด้านความปลอดภัยสำหรับสาเหตุที่ชัดเจน คุณเป็น 100% โปรแกรมนี้ต้องการสิทธิ์ผู้ดูแลระบบในการทำงานอย่างถูกต้อง?
Ramhound

คำตอบ:


14

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

หรือคุณสามารถใช้ runas พร้อมกับตัวเลือก / savecred เพื่อเก็บรหัสผ่านของผู้ใช้คนอื่นหนึ่งครั้งและทำการแคชไว้ตลอดไป แต่จะไม่ทำงานกับ UAC afaik


1
ฉันลอง task scheduler ในตอนแรกเช่นกัน แต่มันทำให้ไอคอนถาดของโปรแกรมหายไป แต่ฉันได้ตรวจสอบการกำหนดค่าของงานในตอนนี้และพบกล่องคำสั่งผสมที่ชื่อConfigure forซึ่งมีค่าเริ่มต้นคือ Vista / 2008 จากนั้นฉันเปลี่ยนเป็น Windows 8.1 และทุกอย่างก็โอเคแล้ว ขอบคุณ
Frederick Zhang

0
  1. สร้างไฟล์เช่น appStart.cmd ที่มี:

    start "" %1

  2. ที่สองในรีจิสทรีคุณต้องเพิ่ม HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

คู่ของคีย์ - ค่า

สำคัญ: "APPNAME"

ค่า: "path-to-appStart.cmd" "path-to-myapp.exe"

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

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