VS2017 / VS 2019 Chạy với tư cách quản trị viên từ thanh tác vụ


98

Tôi muốn chạy Visual Studio 2017/2019 với tư cách quản trị viên khi tôi chọn một dự án từ danh sách gần đây trong thanh tác vụ , tức là. khi mở một dự án thông qua các phím tắt Explorer / Shell.

Tôi đã sử dụng cài đặt: thuộc tính -> phím tắt -> nâng cao -> chạy với tư cách quản trị viên.

Thật không may, điều này không dẫn đến devenv chạy với tư cách Quản trị viên.

có ý tưởng nào để sửa cái này không?

Câu trả lời:


262
  1. Đóng tất cả các phiên bản của Visual Studio
  2. Nhấp chuột phải vào biểu tượng Visual Studio 2017/2019 trên thanh tác vụ của bạn
  3. Nhấp chuột phải vào Visual Studio 2017/2019 và nhấp vào Thuộc tính
  4. Bấm mở nút Vị trí tệp
  5. Nhấp chuột phải vào tệp devenv.exe trong thư mục đó xuất hiện
  6. Chọn Khắc phục sự cố tương thích
  7. Chọn chương trình khắc phục sự cố
  8. Chọn Chương trình yêu cầu quyền bổ sung
  9. Nhấp vào Kiểm tra chương trình và đợi chương trình khởi chạy
  10. Sau đó nhấp vào nút Tiếp theo
  11. Chọn Có, lưu các cài đặt này cho chương trình này
  12. Bấm Đóng
  13. Mở lại dự án của bạn từ danh sách gần đây

4
đây cũng là giải pháp tương tự cho tất cả các phiên bản trước của studio trực quan kể từ khi bộ chọn phiên bản vs được giới thiệu. bất kỳ ai phản đối hoặc đang làm cho nó trở nên cá nhân hoặc từ chối chấp nhận hiện trạng. cảm ơn vì sự khẳng định rằng phương pháp này vẫn hoạt động, tôi chỉ cần thiết để kiểm tra trước khi cố gắng :)
Shaun Wilson

6
bạn sẽ nghĩ MS sẽ có cài đặt so với - 'luôn chạy với tư cách quản trị viên' - vì bất kỳ sự phát triển không tầm thường nào cũng yêu cầu nó
pm100

1
@ pm100 Chà bằng cách nào đó có VSCommands VS Addin có cài đặt này. Nhưng tôi đồng ý rằng bản chất của phát triển web và hỗ trợ IIS trong VS nên cung cấp tính năng này được tích hợp sẵn. Nếu IIS đang được sử dụng cho các giải pháp, bạn cần có quyền quản trị. VS có thể sẽ tự động phát hiện điều đó và khởi chạy lại yêu cầu chúng.
Robert Koritnik

Just FYI: điều này khiến VS yêu cầu chạy với tư cách quản trị viên mỗi khi nó được khởi chạy.
Jeff B

1
I Just vấp ngã về vấn đề này bất cứ khi nào tôi cần phải cài đặt một phiên bản mới của VS ... Bây giờ vào năm 2019, cùng một giải pháp vẫn còn làm việc
moi_meme

16

Hiệu quả của các bước trong câu trả lời của Steve là việc bổ sung một giá trị đăng ký duy nhất. Bạn có thể tránh tất cả các bước đó bằng cách thêm giá trị đăng ký đó qua dòng lệnh. Vì một số lý do, tôi thấy cần một chút thời gian để có hiệu lực, nhưng đăng xuất / đăng nhập sẽ làm cho nó có hiệu lực ngay lập tức.

Vì một số lý do kỳ lạ, tôi thấy rằng, trong trường hợp của tôi, Windows không kiểm tra HKLM. Nó chỉ nhìn vào HKCU. Vì vậy, tôi đặt cả hai. Nhưng đối với những người dùng đăng nhập khác, HKLM sẽ có ích.

Cũng bao gồm việc đặt giá trị tương tự cho VSLauncher.exe, giải quyết các vấn đề khác.

Điều này sẽ xử lý cả VS2017 và 2019. Nếu bạn chỉ cài đặt một trong số chúng, hãy xóa các dòng cho cái còn lại.

Ngoài ra, nếu bạn thay đổi thư mục mà VS được cài đặt, sau đó thay đổi đường dẫn đến devenv.exehoặc chỉ cần sử dụng câu trả lời của Steve để thực hiện theo cách khác.

Trong dấu nhắc lệnh của quản trị viên:

reg.exe Add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\devenv.exe" /d "^ RUNASADMIN"
reg.exe Add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v "C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\Common7\IDE\devenv.exe" /d "^ RUNASADMIN"
reg.exe Add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v "C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\VSLauncher.exe" /d "^ RUNASADMIN"

reg.exe Add "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\devenv.exe" /d "^ RUNASADMIN"
reg.exe Add "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v "C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\Common7\IDE\devenv.exe" /d "^ RUNASADMIN"
reg.exe Add "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v "C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\VSLauncher.exe" /d "^ RUNASADMIN"

Hoặc, nếu bạn thích tệp .reg:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers]
"C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Professional\\Common7\\IDE\\devenv.exe"="^ RUNASADMIN"
"C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Professional\\Common7\\IDE\\devenv.exe"="^ RUNASADMIN"
"C:\\Program Files (x86)\\Common Files\\Microsoft Shared\\MSEnv\\VSLauncher.exe"="^ RUNASADMIN"

[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers]
"C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Professional\\Common7\\IDE\\devenv.exe"="^ RUNASADMIN"
"C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Professional\\Common7\\IDE\\devenv.exe"="^ RUNASADMIN"
"C:\\Program Files (x86)\\Common Files\\Microsoft Shared\\MSEnv\\VSLauncher.exe"="^ RUNASADMIN"

Mặc dù điều này có thể hữu ích, nhưng nó sẽ không hoạt động (sao chép và dán) đối với những người đã cài đặt ứng dụng này ở nơi khác, phiên bản tương lai của VS - hoặc các ứng dụng khác mà mọi người muốn chạy theo cách tương tự.
Anthony Nichols

1
Vâng khi tôi viết điều này, tiêu đề của câu hỏi chỉ nói cụ thể là VS2017 :) Vì điều đó đã được thay đổi, tôi đã thêm các dòng để quan tâm đến năm 2019 và một lưu ý về nó.
Gabriel Luci,

1
Chỉnh sửa Registry không dành cho tất cả mọi người. Bạn phải rất cẩn thận nếu không bạn sẽ làm hỏng toàn bộ hệ điều hành của mình. Do đó, tôi sẽ bỏ phiếu và đề xuất câu trả lời của Steve như là giải pháp an toàn nhất mà bạn có thể có! Một lần nữa, đó là ý kiến ​​của tôi!
Vincy

@Vincy Chắc chắn rồi, nhưng rất có thể, nếu bạn đang sử dụng Visual Studio, bạn biết một hoặc hai điều về Windows và không ngại sửa đổi sổ đăng ký trực tiếp. Không khó để tra cứu một số khóa đăng ký nhất định dùng để làm gì.
Gabriel Luci
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.