เริ่ม Visual Studio ในฐานะผู้ดูแลระบบบน Windows 8 เสมอ


37

เมื่อใดก็ตามที่ฉันเริ่ม Visual Studio 2012 ใน Windows 8 จะต้องมีสิทธิ์ผู้ดูแลระบบในการเข้าถึงข้อมูลเมตาของ IIS และตรวจแก้จุดบกพร่องแอปพลิเคชันเว็บใน IIS

ถ้าฉันปิด UAC ฉันจะไม่สามารถเปิดโปรแกรมจำลองการทำงานของ Windows 8 ได้!

ไม่มีใครรู้ว่าฉันจะทำให้มันหยุดได้โดยไร้สาระเรื่องความปลอดภัยและแค่ให้ฉันทำงานต่อไป?


1
การใช้ซอฟต์แวร์ที่ยังไม่เผยแพร่ในแพลตฟอร์มที่ยังไม่เผยแพร่ ... คุณอาจต้องทนกับเรื่องไร้สาระ
อดัมคิง


ตอนนี้อยู่ใน MSDN แล้ว
Boomerangertanger

คุณลองสร้างทางลัดแล้วกำหนด run เป็นผู้ใช้ให้กับทางลัดนั้นหรือไม่?
tumchaaditya

1
ค่าเริ่มต้นคือการทำงานไม่ได้เป็นผู้ดูแลระบบ
Boomerangertanger

คำตอบ:


27
  1. คลิกขวาที่ไอคอน "Metro" สำหรับ Visual Studio 2012

  2. คลิก "เปิดไฟล์ที่ตั้ง" มันจะนำคุณไปสู่เดสก์ท็อป windows แบบคลาสสิกพร้อมทางลัดสำหรับ Visual Studio

  3. คลิกขวาบนทางลัดนั้นแล้วไปที่ "คุณสมบัติ"

  4. คลิก "ขั้นสูง"

  5. ทำเครื่องหมายที่ "Run as Administrator" แล้วคลิกตกลง

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

คุณจะต้องทำสิ่งนี้กับทางลัดทุกอย่างที่คุณมีใน Visual Studio

นั่นคือถ้าคุณปักหมุด Visual Studio ไว้ที่ทาสก์บาร์แล้ว

  1. คลิกขวาที่ไอคอน

  2. คลิกขวา 'Visual Studio 2012'

  3. จากนั้นดำเนินการต่อจากขั้นตอนที่ 3 ด้านบน


3
คุณทราบวิธีเปิดใช้ 'Run as Admin' เป็นค่าเริ่มต้นหรือไม่ ใน Windows 8 ดูเหมือนว่าพวกเขาจะเรียกใช้ในฐานะผู้ใช้เท่านั้นมีเหตุผลสำหรับผู้ใช้ แต่สำหรับ devs เราจะได้รับกล่องโต้ตอบ 'จำเป็นต้องมีการอนุญาต' ที่ไร้ประโยชน์ตลอดเวลาที่คุณสามารถคลิกผ่านได้

1
ฉันยังไม่รู้วิธีในการสร้างการตั้งค่าแบบ 'เรียกใช้ในฐานะผู้ดูแลระบบ' เมื่อเรียกใช้โซลูชันที่ตรึงหรือล่าสุดจากแถบงาน

9
นี่ไม่ใช่คำตอบที่มีประสิทธิภาพ ตัวอย่างเช่นถ้าคุณเปิด Visual Studio โดยการเปิดโครงการ / โซลูชันแทนการใช้ทางลัด devenv.exe จะไม่ทำงานในระดับสูง / ผู้ดูแลระบบ
nathanchere

4
คำตอบของ FerretallicA เป็นคำตอบที่ถูกต้อง
Jason Kleban

1
@ uosɐſ ฉันเห็นด้วย - นี่ไม่ใช่คำตอบเพราะมันใช้ได้เฉพาะกับโปรแกรมที่ไม่ได้เปิดไฟล์. sln ที่ต้องการ VS2012 โดยตรง ตรวจสอบคำตอบ FerretallicA
BritishDeveloper

51

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

  1. ค้นหาdevenv.exeไฟล์ใน Explorer เช่นของฉันอยู่C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\

  2. คลิกขวาที่ devenv.exe แล้วเลือก "แก้ไขปัญหาความเข้ากันได้"

  3. เลือก "แก้ไขปัญหาโปรแกรม"

  4. เลือก "โปรแกรมนี้ต้องการสิทธิ์เพิ่มเติม"

คุณจะต้องปล่อยให้มันเปิด VS ก่อนที่มันจะช่วยให้คุณคลิกถัดไป แต่ก็เสร็จแล้ว

น่ารำคาญอย่างยิ่งที่คุณไม่สามารถทำได้ผ่านกล่องโต้ตอบคุณสมบัติปกติอีกต่อไป เหมือนกับว่า Microsoft กำลังออกนอกเส้นทางเพื่อให้มั่นใจว่า Windows 8 จะกลายเป็นคนแปลกแยกไปมากเท่าที่จะมากได้ ...


2
การแก้ไขปัญหาความเข้ากันได้นี้เป็นวิธีที่จะไป - ดูแลทางลัดและรายการที่ถูกตรึงในครั้งเดียว! นี่ควรเป็นคำตอบที่ทำเครื่องหมายไว้
Jason Kleban

6

มีปัญหาเดียวกันเพื่อนร่วมทีมแนะนำวิธีแก้ปัญหาที่ใช้งานได้สำหรับฉันคือการติดตั้งVSCommands สำหรับ Visual Studio 2012จากนั้นเปิดการกำหนดค่า VSCommands ตั้งค่าการเพิ่มประสิทธิภาพ IDE - ทั่วไป - เริ่มต้น Visual Studio ด้วยสิทธิ์ระดับสูงเสมอ


5

ฉันโพสต์เกี่ยวกับเรื่องนี้ในStack Overflowก่อนที่จะค้นหาคำถามนี้จากนั้นลองทุกคำตอบที่แนะนำที่นี่ ฉันเริ่มพบปัญหาบางอย่างทันที

เมื่อใช้งาน VS2012 ที่มีสิทธิ์ยกระดับฉันไม่สามารถลากและวางไฟล์ลงใน Explorer ได้อีกต่อไปซึ่งฉันถือว่าเป็นเพราะ Explorer ไม่ได้ทำงานด้วยสิทธิ์ยกระดับ

จากนั้นหลังจากฉันใช้ VSCommands เพื่อเรียกใช้ Visual Studio ด้วยสิทธิ์ระดับสูงฉันไม่สามารถเปิดไฟล์ที่เกี่ยวข้องกับ Visual Studio ได้นอกเหนือจากไฟล์โซลูชันแล้วโดยคลิกสองครั้งใน Explorer Visual Studio จะเปิดขึ้น แต่จากนั้นฉันจะได้รับข้อผิดพลาดThere was a problem sending the command to the program.และไม่สามารถเปิดได้

นี่ทำให้ฉันต้องใช้กล่องโต้ตอบเปิดไฟล์หากฉันต้องการเปิดไฟล์ที่ไม่ใช่โซลูชัน / โครงการ

แม้จะไม่มี UI ที่จะปิด UAC เหมือนในอดีตที่ฉันเห็นอย่างน้อยคุณก็ยังสามารถทำได้ผ่านรีจิสทรี กุญแจสำคัญในการแก้ไขคือ:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
EnableLUA - DWORD 1-Enabled, 0-Disabled

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


ขอบคุณสำหรับคำตอบอย่างละเอียด น่าเสียดายที่แอพ Metro เช่น SkyDrive จะไม่ทำงานหากไม่ได้เปิด UAC ดังนั้นฉันจึงกลัวว่านี่ไม่ใช่วิธีแก้ปัญหา วิธีเดียวคือตั้ง "Run as admin" ในการตั้งค่าความเข้ากันได้ของ devenv.exe ขอบคุณ
Boomerangertanger

ฉันใช้ SkyDrive รุ่น 16.4.6010.0727 และมันทำการซิงค์ไฟล์ของฉันได้ดี ฉันไม่มีไอคอนซ้อนทับอีกต่อไปเมื่ออยู่ในโฟลเดอร์ SkyDrive แต่การซิงค์ยังคงใช้งานได้ สำหรับแอพเมโทร ... ฉันยังคงชัดเจน ไม่เพียง แต่ฉันไม่ชอบส่วนหนึ่งของ win8 แต่มันทำให้ชีวิตของฉันลำบากขึ้นอย่างที่คุณเห็นด้วย UAC ดูเหมือนว่ามันจะเป็นเป้าหมายของพวกเขาด้วย win8 & vs2012
Brian Surowiec

ฉันไม่แน่ใจว่าทำไมคุณถึงไม่ชอบรถไฟฟ้าใต้ดินมันเป็นเพียงแค่ไอคอนและแอพโหลดมากมายเช่น Windows 1.0 ถึง Windows 7 ยกเว้นไอคอนที่มีความกว้างกว่าและแอปเต็มหน้าจอ ฉันไม่รู้ว่าทำไมชีวิตของคุณถึงยากขึ้นเมื่อคุณกดเริ่มและพิมพ์อะไรบางอย่างรายการจะปรากฏขึ้นและคุณกด Enter เหมือนปกติ
Boomerangertanger

4

ตัวเลือกที่ 1 - ตั้งค่า VSLauncher.exe และ DevEnv.exe ให้เรียกใช้ในฐานะผู้ดูแลเสมอ

หากต้องการให้ Visual Studio ทำงานเป็นผู้ดูแลระบบเสมอเมื่อเปิดไฟล์. sln ใด ๆ :

  1. C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\VSLauncher.exeนำทางไปยัง
  2. คลิกขวาบนVSLauncher.exeและเลือกการทำงานร่วมกันแก้ปัญหา
  3. เลือกโปรแกรมการแก้ไขปัญหา
  4. ทำเครื่องหมายโปรแกรมต้องได้รับอนุญาตเพิ่มเติมและกดปุ่ม Next
  5. คลิกปุ่มทดสอบโปรแกรม ...เพื่อเปิด VS
  6. คลิกถัดไปจากนั้นกดใช่บันทึกการตั้งค่าเหล่านี้สำหรับโปรแกรมนี้จากนั้นคลิกปุ่มปิด

หากต้องการให้ Visual Studio ทำงานเป็นผู้ดูแลระบบเสมอเมื่อเปิด Visual Studio โดยตรงให้ทำเช่นเดียวกันกับไฟล์ DevEnv.exe ไฟล์เหล่านี้อยู่ที่:

Visual Studio 2010

C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe

Visual Studio 2012

C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\devenv.exe

Visual Studio 2013

C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\devenv.exe

Visual Studio 2015

C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\devenv.exe

Visual Studio 2019

C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\Common7\IDE\devenv.exe

ตัวเลือกที่ 2 - ใช้ VSCommands extension สำหรับ Visual Studio

ติดตั้งส่วนขยาย VSCommandsฟรีสำหรับ Visual Studio (อยู่ในVisual Studio Extensions Gallery ) จากนั้นกำหนดค่าให้ Visual Studio เริ่มต้นด้วยสิทธิ์ผู้ดูแลระบบเสมอโดยไปที่เครื่องมือ -> VSCommands -> ตัวเลือก -> การเพิ่มประสิทธิภาพ IDE -> ทั่วไปและทำเครื่องหมายAlways start Visual Studio with elevated permissionsและคลิกปุ่มบันทึก

หมายเหตุ: VSCommands ไม่สามารถใช้ได้สำหรับ VS 2015 ในขณะนี้ แต่เว็บไซต์ของพวกเขาบอกว่าพวกเขากำลังทำงานเพื่ออัปเดตให้รองรับ VS 2015

ความคิดเห็นของฉัน

ฉันชอบตัวเลือกที่ 2 เพราะ:

  • มันยังช่วยให้คุณสามารถปิดฟังก์ชั่นนี้ได้อย่างง่ายดาย
  • VSCommands มาพร้อมกับคุณสมบัติที่ยอดเยี่ยมมากมายดังนั้นฉันจึงติดตั้งมันเสมอ
  • มันง่ายกว่าที่จะทำมากกว่าตัวเลือก 1

vscommands.squaredinfinity.comดูเหมือนจะไม่พร้อมใช้งานสำหรับ VS 2015
Naomi

1
@ นาโอมิใช่ฉันสังเกตเห็นว่าในโพสต์ของฉัน พวกเขากล่าวว่าพวกเขากำลังดำเนินการอยู่ดังนั้นหวังว่าพวกเขาจะมีเวอร์ชั่นที่รองรับ VS 2015 ในปลายปีนี้
deadlydog

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

@Naomi hmmm คุณเข้าสู่ระบบในฐานะผู้ดูแลระบบบนคอมพิวเตอร์ของคุณหรือไม่?
deadlydog

3

สำหรับฉันทุกวิธีมีข้อบกพร่องที่สำคัญ วิธีเดียวที่ดีที่ฉันเกิดขึ้นคือการแฮกข้อมูลในรีจิสทรี คุณอาจต้องการอ่านโพสต์ของฉันเกี่ยวกับปัญหานี้ ( http://daniellang.net/always-run-visual-studio-as-administrator-in-windows-8/ ) หรือเพียงแก้ไขโดยตรง:

ไปHKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layersและเพิ่มรายการที่มีชื่อที่และความคุ้มค่าC:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\VSLauncher.exe RUNASADMINสิ่งนี้จะทำให้การเรียกใช้ VS เป็นผู้ดูแลระบบ


ด้วยเหตุผลบางอย่างสิ่งนี้ไม่ได้ผลสำหรับฉัน แต่การเพิ่มรายการเข้าHKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layersแทนที่กลอุบาย
Piotr Szmyd

1

บนเครื่อง Win8 ของฉันกับ VS Express 2013 ปัญหากำลังเกิดขึ้นเมื่อฉันเก็บโครงการของฉันในเอกสารของฉัน ฉันเคยเห็นสิ่งนี้ในเครื่อง Win7 ที่มี VS เก่าเช่นกัน เมื่อฉันสร้างโครงการใหม่ / ย้ายไปยังตำแหน่งอื่น (เช่น C: / Programming /) มันทำงานได้ตามที่ควร!


0

วิธีแก้ปัญหาที่เพื่อนร่วมงานบอกฉันเกี่ยวกับการสร้างงาน Task Scheduler สำหรับโซลูชันแต่ละรายการของคุณ งานเปิดตัว Visual Studio ด้วยบรรทัดคำสั่งที่โหลดโครงการของคุณ

นี่คือค่าที่คุณต้องตั้งค่า:

  • ให้ชื่องานที่สะท้อนถึงโครงการที่กำลังเปิด (คุณจะใช้ในภายหลัง)
  • ทำงานด้วยสิทธิพิเศษสูงสุด
  • ทำงานเฉพาะเมื่อผู้ใช้เข้าสู่ระบบ
  • สร้างการกระทำ:
    • การดำเนินการ: เริ่มโปรแกรม
    • โปรแกรม / สคริปต์: "Visual C: \ Program Files (x86) \ Microsoft Visual Studio [xx] .0 \ Common7 \ IDE \ devenv.exe" (แทนที่ [xx] ด้วย VS เวอร์ชันของคุณ)
    • อาร์กิวเมนต์: / Project "[เส้นทางแบบเต็มไปยังโซลูชันของคุณ] .sln"
  • เงื่อนไข:
    • ยกเลิกการเลือกรายการทั้งหมด
  • การตั้งค่า:
    • ทำเครื่องหมายอนุญาตให้เรียกใช้งานตามความต้องการ
    • ยกเลิกการเลือกรายการอื่น ๆ ทั้งหมด
    • กฎการเรียกใช้งาน: อย่าเริ่มต้นอินสแตนซ์ใหม่ (ไม่บังคับ)

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

คลิกขวาที่คุณต้องการทางลัดและเลือกสร้างทางลัด นี่คือบรรทัดคำสั่งที่จะใส่ในทางลัด:

C: \ Windows \ System32 \ schtasks.exe / run / tn "[ชื่องานจากด้านบน]"

ตอนนี้คุณสามารถคลิกสองครั้งที่ทางลัดเพื่อเรียกใช้โซลูชันของคุณในฐานะผู้ดูแลระบบโดยไม่เรียกใช้ UAC

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

เรียกใช้ Visual Studio ในฐานะผู้ดูแลเสมอโดยไม่แจ้งให้ UAC

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