ลากและวางไฟล์ลงในแอปพลิเคชันภายใต้การทำงานในฐานะผู้ดูแลระบบ


52

เมื่อใดก็ตามที่ฉันมีแอพพลิเคชันที่ทำงานอยู่ (Visual Studio 2008, Notepad และอื่น ๆ ) ภายใต้ "Run as Administrator" ฉันไม่สามารถลากและวางไฟล์จาก Windows Explorer ลงในแอปพลิเคชันได้

ฉันได้ลองใช้ Windows Explorer ในฐานะผู้ดูแลระบบ แต่ก็ไม่มีประโยชน์

มีวิธีการลากและวางเพื่อทำงานเมื่อแอปพลิเคชันของฉันอยู่ภายใต้ "เรียกใช้ในฐานะผู้ดูแลระบบ" หรือไม่?


2
ยูเรก้า! ดังนั้นที่เป็นสาเหตุ
MC Emperor

คำตอบ:


34

ปัญหาเชื่อมโยงกับการอนุญาตด้านความปลอดภัย ความสามารถในการลากและวางจากแอปพลิเคชันทั่วไปไปยังแอปพลิเคชันที่ยกระดับนั้นจะทำลายโมเดลความปลอดภัยที่อยู่เบื้องหลัง UAC อย่างไรก็ตามฉันไม่ชัดเจนว่าทำไมการแจ้งเตือน UAC จึงไม่ปรากฏขึ้นดังนั้นจึงอนุญาตให้มีการดำเนินการที่เลื่อนระดับขึ้นชั่วคราว (เหมือนกับผู้ใช้ linux ที่สัมผัสได้ทุกวัน) นี่เป็นสิ่งที่ Microsoft ต้องการทำงานอย่างแน่นอน สิ่งที่ฉันเป็นปัญหาคือปัญหานี้เก่าแล้ว Vista ทำตัวเหมือนเดิม

มี 2 ​​สิ่งที่คุณสามารถทำได้ (หนึ่งที่น่าเกลียดหนึ่งที่น่ารำคาญ)

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

ทำไมตัวจัดการไฟล์อื่น เพราะคุณไม่สามารถยกระดับ Windows Explorer ได้จริง แม้จะเห็นตัวเลือกในเมนูบริบทของไอคอน Windows Explorer และมีการแจ้งเตือน UAC แต่ข้อเท็จจริงคือ Windows Explorer จะไม่ได้รับการยกระดับ


12
จริงๆแล้วมันสามารถ หากคุณเลือกตัวเลือกLaunch folder windows in a separate processและปิดหน้าต่างโฟลเดอร์ทั้งหมดของคุณตัวRun as Administratorเลือกถัดไปที่คุณเปิดใช้งานจะทำงาน จนกว่าหน้าต่างโฟลเดอร์ทั้งหมดจะถูกปิดหน้าต่างโฟลเดอร์ทั้งหมดจะถูกยกระดับ
ไมเคิล Urman

สิ่งนี้น่าสนใจ แต่ทำไมมันถึงไม่สามารถแก้ไขปัญหาการลากและวางได้?
Chris Dwyer

คริสไม่ทำอะไร คำตอบหรือความคิดเห็น Micheal ของฉัน?
คนแคระ

1
@Michael ภายใต้ Windows-7 ที่ไม่ทำงาน Explorer ไม่สามารถยกระดับความรู้ของฉัน
คนแคระ

2
ฉันใช้งาน 7-Zip พร้อมสิทธิ์ของผู้ดูแลระบบและสามารถลากไฟล์จากแอพนั้นไปยังแอปอื่นที่มีสิทธิ์ผู้ดูแลระบบได้
KClough

7

นี่เป็นวิธีแก้ไขปัญหาตามวิธีแก้ปัญหา "น่ารำคาญ" ของ ADwarf: เปิด Notepad ด้วย "Run as Administrator" คลิกที่เปิดในเมนูไฟล์และป้อน * ในชื่อไฟล์และกด Enter ตอนนี้คุณสามารถลากไฟล์จากที่นั่นไปยังแอปของคุณ เบราว์เซอร์เปิด Notepad ไม่สนับสนุนการเลือกไฟล์ทวีคูณ แต่คุณสามารถใช้โปรแกรมอื่นในลักษณะเดียวกับการใช้การลากแล้วปล่อย!


ฉันสงสัยว่ามีอะไรน่ารำคาญมากกว่านี้: การทำสิ่งนี้ทุกเช้าเปิด Notepad และนำทางไปยังโฟลเดอร์ที่คุณต้องการทุกครั้งตามด้วยการลากแล้วปล่อยหรือคลิก "เปิด" ในโปรแกรมเป้าหมายนำทางไปยังโฟลเดอร์ คุณต้องการและเพียงแค่ดับเบิลคลิก ในทุก ๆ ทางที่คุณใส่มันเป็น PITA ที่สำคัญ!
หน้าตาบูดบึ้งของ Despair

3

วินโดว 7:

เรียกใช้ PowerShell โดยใช้ Run As Administrator

ประเภท:

taskkill /f /im explorer.exe

start-process explorer.exe

หรือเรียกใช้ cmd (พร้อมรับคำสั่ง) โดยใช้ Run As Administrator

ประเภท:

taskkill /f /im explorer.exe

start explorer.exe

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


2
มันใช้งานไม่ได้ พยายามและยังคงเป็นปัญหาเดียวกัน
ธีรี่ร์

สิ่งนี้ใช้ได้สำหรับฉัน ขอบคุณ! ฉันใช้ Windows 8 จัดการกับการลากแล้ววางลงในแอพที่เกิดจาก Visual Studio 2013 (ซึ่งทำงานเป็นผู้ดูแลระบบ)
โอเว่น

คุณแนะนำให้ดำเนินการโดยอัตโนมัติเมื่อเริ่มต้นหรือไม่
Oliver M Grech

1

มีการอัปเดตเป็น Visual Studio 2005 เผยแพร่เมื่อ 2 ปีที่แล้วซึ่งแก้ไขปัญหา UAC จำนวนมากใน Vista และการปรับปรุงเดียวกันนั้นแก้ไขปัญหาเดียวกันใน Windows 7

ไม่ใช่การอัปเดตที่สำคัญดังนั้นคุณจะไม่ได้รับมันโดยอัตโนมัติและไม่รวมอยู่ใน VS2005 SP1 พวกเขาไม่ได้เผยแพร่การอัพเดตนี้อย่างแข็งขันในตอนนี้ b / c พวกเขาแค่ต้องการให้ทุกคนไปที่ VS2008 โอกาสที่คุณไม่มีมัน

คำอธิบายที่ http://msdn.microsoft.com/en-us/vstudio/aa948853.aspx?lcid=1033

ดาวน์โหลดได้ที่http://www.microsoft.com/downloads/details.aspx?FamilyID=90e2942d-3ad1-4873-a2ee-4acc0aace5b6&displaylang=th

นี่คือสิ่งที่การปรับปรุงแก้ไขเมื่อใช้งาน Visual Studio ในโหมดผู้ใช้ปกติที่เปิดใช้งาน UAC:

  • ลาก / วางไฟล์จากหน้าต่าง explorer
  • การเรียกใช้ VS (ในฐานะผู้ใช้ทั่วไป) โดยเรียกใช้ทางลัดไปยังโซลูชัน / โครงการหรือประเภทไฟล์ที่เกี่ยวข้อง
  • การลงทะเบียน DLL / EXE ยังคงล้มเหลว (ถูกต้องเนื่องจากการเปลี่ยนแปลงระดับระบบ)

หากคุณใช้ VS เป็นผู้ดูแลระบบหน้าต่างจะยังคงล็อคลงเพื่อลาก / วางและทางลัดและการลงทะเบียน DLL / EXE ทำงานอย่างถูกต้องโดยไม่ต้องปิด UAC อย่างสมบูรณ์

หมายเหตุ: VS จะยังคงเตือนคุณเกี่ยวกับโหมดผู้ดูแลระบบเมื่อคุณเปิดใช้งาน แต่ตอนนี้คุณสามารถละเว้นคำเตือนนั้นได้อย่างถาวร


แต่นี่สำหรับ VS 2005 ...
Chris Dwyer

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