VS2017 / VS 2019 Jalankan Sebagai Admin dari taskbar

98

Saya ingin menjalankan Visual Studio 2017/2019 sebagai admin ketika saya memilih proyek dari daftar terbaru di taskbar , mis. saat membuka proyek melalui pintasan Explorer / Shell.

Saya menggunakan pengaturan: properti -> pintasan -> lanjutan -> run as admin kotak centang.

Sayangnya, hal ini tidak mengakibatkan devenv berjalan sebagai Administrator.

Ada ide tentang cara memperbaikinya?

Paul0515
sumber

Jawaban:

262
  1. Tutup semua contoh Visual Studio
  2. Klik kanan pada ikon Visual Studio 2017/2019 di bilah tugas Anda
  3. Klik kanan pada Visual Studio 2017/2019 dan klik Properties
  4. Klik tombol Buka Lokasi File
  5. Klik kanan file devenv.exe di folder itu muncul
  6. Pilih Troubleshoot kompatibilitas
  7. Pilih Troubleshoot program
  8. Pilih Program ini membutuhkan izin tambahan
  9. Klik Uji program dan tunggu program diluncurkan
  10. Kemudian klik tombol Next
  11. Pilih Ya, simpan pengaturan ini untuk program ini
  12. Klik Tutup
  13. Buka kembali proyek Anda dari daftar terbaru
Steve Kennedy
sumber
4
ini juga merupakan solusi yang sama untuk semua versi studio visual sebelumnya sejak pemilih versi vs diperkenalkan. siapa pun yang memberikan suara negatif berarti membuatnya bersifat pribadi, atau menolak menerima status quo. terima kasih atas konfirmasi bahwa metode ini masih berfungsi, saya hanya perlu memeriksa sebelum mencoba :)
Shaun Wilson
6
Anda akan berpikir MS akan memiliki pengaturan vs - 'selalu dijalankan sebagai admin' - karena setiap pengembangan yang tidak sepele memerlukannya
pm100
1
@ pm100 Nah entah bagaimana ada VSCommands VS Addin yang memiliki pengaturan ini. Tapi saya setuju bahwa sifat pengembangan web dan dukungan IIS dalam VS harus menyediakan ini bawaan. Jika IIS digunakan untuk solusi, Anda memerlukan hak admin. VS mungkin harus mendeteksinya secara otomatis dan meluncurkan kembali permintaannya.
Robert Koritnik
FYI: ini menyebabkan VS meminta untuk dijalankan sebagai administrator setiap kali diluncurkan.
Jeff B
1
Saya baru saja tersandung ini setiap kali saya perlu menginstal versi baru VS ... Sekarang pada 2019, solusi yang sama masih berfungsi
moi_meme
16

Efek dari langkah-langkah dalam jawaban Steve adalah penambahan satu nilai registri. Anda dapat menghindari semua langkah tersebut hanya dengan menambahkan nilai registri tersebut melalui baris perintah. Untuk beberapa alasan saya merasa perlu sedikit waktu untuk diterapkan, tetapi logout / login harus segera diterapkan.

Untuk beberapa alasan aneh, saya menemukan bahwa, dalam kasus saya, Windows tidak memeriksa HKLM. Itu hanya melihat HKCU. Jadi saya mengatur keduanya. Tetapi untuk pengguna lain yang login, HKLM akan berguna.

Juga disertakan adalah pengaturan nilai yang sama untuk VSLauncher.exe, yang memecahkan masalah lain.

Ini menangani VS2017 dan 2019. Jika Anda hanya menginstal salah satunya, hapus baris untuk yang lain.

Juga, jika Anda mengubah folder tempat VS diinstal, kemudian ubah jalur ke devenv.exe, atau cukup gunakan jawaban Steve untuk melakukannya dengan cara lain.

Di prompt perintah administrator:

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"

Atau, jika Anda lebih suka file .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"
Gabriel Luci
sumber
Meskipun ini mungkin berguna, ini tidak akan berfungsi (salin dan tempel) untuk orang yang menginstal aplikasi ini di tempat lain, versi VS mendatang - atau aplikasi lain yang ingin dijalankan orang dengan cara yang sama.
Anthony Nichols
1
Nah ketika saya menulis ini, judul pertanyaannya secara khusus hanya mengatakan VS2017 :) Sejak itu diubah, saya telah menambahkan baris untuk mengurus 2019 dan catatan tentangnya.
Gabriel Luci
1
Mengedit Registry bukan untuk semua orang. Anda harus sangat berhati-hati atau Anda akhirnya akan merusak seluruh OS Anda. Oleh karena itu, saya akan memilih dan merekomendasikan jawaban Steve sebagai solusi teraman yang dapat Anda miliki! Sekali lagi, itu pendapat saya!
Vincy
@Vincy Tentu, tetapi kemungkinan besar, jika Anda menggunakan Visual Studio, Anda tahu satu atau dua hal tentang Windows dan tidak takut mengubah registri secara langsung. Tidak sulit untuk mencari untuk apa kunci registri tertentu itu.
Gabriel Luci