ไม่สามารถเรียกใช้ File Explorer ในฐานะผู้ใช้อื่น


8

จากคำถามนี้เกี่ยวกับการเปิดไฟล์ explorer ในฐานะผู้ใช้คนอื่นฉันได้ลองไปที่C:\Windows, เปลี่ยน + คลิกขวาexplorer.exeแล้วคลิก "เรียกใช้ในฐานะผู้ใช้อื่น" เมื่อฉันป้อนรายละเอียดการเข้าสู่ระบบของผู้ใช้ฉันจะได้รับข้อความแสดงข้อผิดพลาด 2 ครั้งซึ่งทั้งคู่บอกว่า

Windows ไม่สามารถเข้าถึงอุปกรณ์เส้นทางหรือไฟล์ที่ระบุ คุณอาจไม่มีสิทธิ์ที่เหมาะสมในการเข้าถึงรายการ

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

แก้ไข

มีความสับสนในความคิดเห็น ฉันพยายามติดตามคำตอบที่ยอมรับแล้วในคำถามที่ลิงก์ด้านบนแต่มันไม่ทำงาน บางคนบอกว่ามันไม่สามารถทำได้ดังนั้นจึงแปลกที่มีคำตอบที่ยอมรับพร้อมกับ 3 upvotes


@ Blueberry-Vignesh4303 ผู้ใช้บนพีซีของฉันมีทั้งสิทธิ์ในการอ่านและอ่าน & ดำเนินการสำหรับexplorer.exe
binaryfunt

ทั่วไปของฉันคิดว่ามันจะตั้งแต่ explorer [กระบวนการแบบขนาน explorer ที่ทำงานกับผู้ใช้ที่มีอยู่แล้ว] เป็นไดเรกทอรีทั่วไปซึ่งเป็นเรื่องธรรมดาสำหรับทั้งสองที่ให้บริการการสำรวจไฟล์ในไดเรกทอรี windowsดังนั้นมันอาจไม่สามารถเข้าถึงได้โดยผู้ใช้อื่น กำลังเรียกใช้โปรแกรม Microsoft อื่น ๆ เช่น cmd.exe?
Blueberry - Vignesh4303

@ Blueberry-Vignesh4303 ฉันสามารถเปิดได้cmd.exeดีเหมือนผู้ใช้คนอื่น หากคำตอบที่ได้รับการยอมรับของคำถามที่เชื่อมโยง (3 upvotes) บอกว่าทำสิ่งที่ฉันพยายามทำเพื่อเรียกใช้ explorer ในฐานะผู้ใช้คนอื่นมันควรจะทำงาน
binaryfunt

หากคุณสามารถเปิด cmd ได้ดีจากประเภทstart .นั้นและมันควรเปิด explorer ในฐานะผู้ใช้รายนั้น
LPChip

@LPChip ฉันได้รับข้อความแสดงข้อผิดพลาดเหมือนกันถ้าผมพยายามที่และกล่าวว่าAccess deniedในการขึ้นบรรทัดใหม่ (ปกติสามารถ cmd พรอมต์ยังคงเปิด Explorer เป็นบัญชีปัจจุบัน)
binaryfunt

คำตอบ:


6

ต่อTechNet Blog Postนี้explorer.exeดูเหมือนจะเป็นเธรดเดี่ยวและจะไม่อนุญาตให้มีหลายเธรดที่ทำงานภายใต้บัญชีผู้ใช้ที่แตกต่างกัน:

Windows Explorer ไม่ได้รับการออกแบบมาให้ทำงานในบริบทความปลอดภัยหลายรายการในเซสชันเดสก์ท็อปเดียวกัน Windows ไม่สามารถส่งพรอมต์ UAC ได้ง่ายๆจากนั้นเปิดใช้อินสแตนซ์ที่ยกระดับของ Explorer

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


2
ดูเหมือนว่าคำตอบที่ถูกต้อง ฉันพบอุปสรรคเดียวกับ OP ฉันเชื่อว่าคำตอบนี้ควรเป็นคำตอบที่ยอมรับได้
James Jenkins

1

จากสิ่งที่คุณสามารถอ่านในคำถามอื่น ๆ ( 1 , 2 ) เกี่ยวกับหัวข้อนี้มักจะแฮ็กที่ดีที่สุดและไม่ใช่สถานการณ์ที่สนับสนุน ยิ่งคำถามที่สองมีข้อมูลมากขึ้นและหากคุณติดตามลิงก์น้อยคุณจะพบว่าที่นี่: และนี่คือ Vista ...

หากคุณตรวจสอบบทความที่คุณจะอ่านต่อไปนี้:

อย่างไรก็ตามใน Vista มีการเปลี่ยนแปลงเพิ่มเติม Internet Explorer หรือ Windows Explorer ไม่เต็มใจให้ความบันเทิงกับบัญชีหลายบัญชีบนเดสก์ท็อปเดียวกัน หากคุณพยายามรัน IE ภายใต้บัญชีผู้ใช้อื่นจากเดสก์ท็อปมันจะแสดงข้อความแสดงข้อผิดพลาด:“ คำสั่ง RUNAS ไม่ได้รับการสนับสนุน” ดังที่ฉันเข้าใจเหตุผลหลักคือด้วย Protected Mode Internet Explorer ซึ่งทำงานที่ระดับความน่าเชื่อถือต่ำ IE ก็เปิดตัวกระบวนการนายหน้ากลาง IL (ieuser.exe) ซึ่งทำงานในฐานะผู้ใช้เดสก์ท็อปและเลือกการดำเนินการ Medium IL สำหรับ กระบวนการ IL ต่ำ การอนุญาตให้ผู้ใช้หลายคนรวมตัวกันในนั้นจะได้นำความซับซ้อนที่สำคัญหลีกเลี่ยงได้ดีที่สุด หากคุณพยายามเรียกใช้ Windows Explorer ในฐานะผู้ใช้อื่นคุณจะไม่เห็นอะไรเลยกระบวนการใหม่เริ่มต้น แต่จบโดยไม่แสดงหน้าต่าง

...

Explorer เป็นนักเล่นเล่ห์เหลี่ยมเล็กน้อย การใช้“ Run as administrator” โดยตรงจะไม่ทำได้ แต่การเรียกใช้จากเชลล์คำสั่งที่ยกระดับมักจะเกิดขึ้น ฉันพบว่าบรรทัดคำสั่งเช่น“ explorer / e, c: \” จะทำงานได้ในขณะที่การเรียกใช้“ explorer” อาจไม่ทำงาน แต่ก่อนหน้านี้ : ถ้ามันใช้งานได้จริงมันเป็นผลข้างเคียงที่ไม่ได้ตั้งใจของการใช้งานในปัจจุบันและอาจมีการเปลี่ยนแปลงได้ตลอดเวลา

มีเหตุผลที่จะคาดหวังให้พวกเขารักษาพฤติกรรมนี้ตามที่มีใน Windows Vista, Windows 7, Windows 8 และตอนนี้ (อาจ) Windows 10

ดังนั้นดูเหมือนว่าคุณจะต้องใช้แฮ็คพิจารณาวิธีแก้ปัญหาหรือประเมินปัญหาของคุณใหม่ซึ่งทำให้คุณต้องเรียกใช้ Explorer ในฐานะผู้ใช้อื่น

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

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


1

การตั้งค่า Explorer เพื่อเปิดโฟลเดอร์ในกระบวนการแยกที่ใช้เพื่ออนุญาตให้ทำงานภายใต้ 1511 เช่นที่พรอมต์คำสั่งที่ทำงานเป็น user1, "explorer c: \ somePath" จะเปิดหน้าต่าง Explorer ที่ทำงานเป็น user1 ในขณะที่จากพรอมต์คำสั่งทำงานเป็น UserZ คำสั่งเดียวกันจะเปิดหน้าต่าง explorer ที่ทำงานเป็น UserZ

หลังจากอัปเกรดเป็น 1607 นั่นพัง คลิกขวาและเรียกใช้เป็นผลลัพธ์ของผู้ใช้ที่แตกต่างกันในข้อผิดพลาดที่ระบุไว้ข้างต้น

การเรียกใช้ explorer จากพรอมต์คำสั่งจะไม่มีหน้าต่างปรากฏขึ้น แต่เป็นกระบวนการใหม่ที่ explorer เป็นเจ้าของโดยผู้ใช้เดสก์ท็อปที่เข้าสู่ระบบในปัจจุบัน กระบวนการนั้นก็หายไปเอง ฉันได้ดูสองสามครั้งที่กระบวนการสำรวจใหม่เปิดตัวในฐานะผู้ใช้ที่เรียกใช้จากนั้นกระบวนการนั้นจะปิดทันทีและกระบวนการใหม่ที่ผู้ใช้เดสก์ท็อปเป็นผู้วางไข่ (และไม่ปรากฏขึ้นเลยและหลังจากถูกฆ่าโดยอัตโนมัติ ) ฉันสงสัยว่านี่เป็นกรณีเสมอโดยปกติจะเกิดขึ้นเร็วเกินไปที่จะสังเกตในตัวจัดการงาน การตรวจสอบกระบวนการหรือสิ่งที่คล้ายกันอาจช่วยพิสูจน์สิ่งนี้ แต่ฉันไม่ได้ใส่ใจเนื่องจากฉันอาจไม่สามารถแก้ไขได้ : \


1

วิธีแก้ปัญหาที่น่าสนใจที่ฉันเพิ่งค้นพบตัวเองและไม่มีใครที่นี่ได้กล่าวถึง:

วางกระบวนการ / โปรแกรมใด ๆ ในฐานะผู้ใช้คนอื่น (เช่น Notepad) และขึ้นอยู่กับโปรแกรมและกรอบการทำงานที่ใช้คุณสามารถใช้Common File Dialog Box APIเพื่อทำการดำเนินการเชลล์ "explorer" จำนวนมาก

(เพียงเลือกบันทึกเป็น .. หรือเปิด ... จากเมนูและใช้เมนูบริบทเพื่อดำเนินการคัดลอก / วาง ฯลฯ จากนั้น "ยกเลิก" กล่องโต้ตอบ)

วิธีการเรียกใช้ในฐานะผู้ใช้ที่แตกต่างกันตั้งแต่แรก

หากต้องการวางไข่โปรแกรมใด ๆ ในฐานะผู้ใช้อื่นให้ใช้sysinternals shellrunasซึ่งสามารถติดตั้งรายการเมนูบริบท อีกทางเลือกหนึ่งวางไข่ cmd กับbuiltin runas ของ Windowsแล้วเริ่มต้นโปรแกรมที่ใช้กล่องโต้ตอบแฟ้มทั่วไป API

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