Bisakah Anda memaksa Visual Studio untuk selalu dijalankan sebagai Administrator di Windows 8?

1013

Di Windows 7, Anda bisa masuk ke pengaturan kompatibilitas program dan mencentang untuk selalu berjalan sebagai Administrator. Apakah ada opsi serupa di Windows 8?

Saya selalu menonaktifkan UAC di komputer saya, dan melakukan hal yang sama setelah upgrade Windows 8 saya, atau jadi saya pikir. Ternyata tidak ada offopsi, hanya mematikan notifikasi.

Ini berarti tidak ada yang dijalankan sebagai Administrator meskipun berada di grup Administrator. Saya harus terus menutup dan membuka kembali konsol saya \ Visual Studio ketika saya mencoba untuk debug (lampirkan pada proses, bukan F5), yang sangat membuat frustrasi.

Sangat menyebalkan bahwa saya harus ingat untuk mengambil langkah ekstra untuk membukanya sebagai Administrator atau menyuruhnya untuk menutup dan membuka kembali ketika saya pergi untuk debug untuk pertama kalinya.

Brian Surowiec
sumber
6
Saya pikir ini adalah pertanyaan yang valid di sini, tetapi saya pikir Anda harus bertanya pada SuperUser juga - mungkin ada jawaban umum.
Preet Sangha
4
Jika VS perlu diluncurkan sebagai administrator, maka izin file Anda salah. Mereka mudah dikacaukan dengan UAC dinonaktifkan.
KeatsPeeks
19
@Keats Hak administratif diperlukan untuk menjalankan aplikasi ASP.NET di IIS (karena akan mencoba untuk secara otomatis membuat direktori virtual, dll.)
codemonkeh
4
@camelBase Saya merasa, program harus dibuat untuk dijalankan sebagai administrator hanya bila diperlukan. Biasanya mereka harus dijalankan di bawah privasi. Itu yang saya lakukan.
VivekDev
1
Anda seharusnya benar-benar tidak melakukannya karena jika Anda bekerja dengan 2 proyek dan hanya satu yang perlu dijalankan sebagai administrator, Anda tidak boleh memulai contoh lain sebagai administrator.
Phil1970

Jawaban:

2013

Di Windows 8 & 10, Anda harus mengklik kanan devenv.exedan memilih "Pemecahan masalah kompatibilitas".

  1. Pilih "Program pemecahan masalah"
  2. Periksa "Program ini membutuhkan izin tambahan"
  3. Klik "Selanjutnya"
  4. Klik "Uji program ..."
  5. Tunggu program untuk diluncurkan
  6. Klik "Selanjutnya"
  7. Pilih "Ya, simpan pengaturan ini untuk program ini"
  8. Klik "Tutup"

Jika, ketika Anda membuka Visual Studio ia meminta untuk menyimpan perubahan ke devenv.sln, lihat jawaban ini untuk menonaktifkannya:

Nonaktifkan dialog penyimpanan solusi Visual Studio devenv


Jika Anda berubah pikiran dan ingin membatalkan pengaturan Kompatibilitas "Jalankan Sebagai Administrator", lihat jawabannya di sini: Cara Memperbaiki format Guid yang Tidak Dikenali di Visual Studio 2015

Siewers
sumber
40
Ini adalah solusi terbaik yang pernah saya temui. Sekarang saya dapat membuka file .sln lagi dari windows explorer!
Max Schilling
39
Demikian juga, ia juga memecahkan solusi yang disematkan yang dapat dijalankan sebagai administrator. Terima kasih.
Bern
183
Anda mungkin juga ingin melakukan ini pada C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\VSLauncher.exefile jika Anda memiliki beberapa versi Visual Studio diinstal. Juga, jalur default ke file devenv.exe adalah: 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
deadlydog
61
Bagaimana Anda mengembalikan ini kembali ke keadaan semula?
Robert Koritnik
96
@RobertKoritnik Ini setara dengan menambahkan entri registri dengan nama C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exedan nilai di RUNASADMINbawah HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers. Menghapus entri akan mengembalikan pengaturan.
Piotr Szmyd
168

Setelah mencari di Super User saya menemukan pertanyaan ini yang menjelaskan bagaimana melakukan ini dengan cara pintas di layar mulai. Demikian pula Anda dapat melakukan hal yang sama ketika Visual Studio disematkan ke bilah tugas. Di kedua lokasi:

  1. Klik kanan ikon Visual Studio
  2. Pergi ke Properties
  3. Di bawah Shortcut tabpilihAdvanced
  4. Memeriksa Run as administrator

mengatur operasi default dalam mode admin

Tidak seperti pada Windows 7 ini hanya berfungsi jika Anda meluncurkan aplikasi dari pintasan yang Anda ubah. Setelah memperbarui kedua pintas Visual Studio tampaknya juga berfungsi ketika Anda membuka file solusi dari Explorer.

Perbarui Peringatan: Sepertinya salah satu kelemahan utama dalam menjalankan Visual Studio dengan izin yang ditinggikan adalah karena Explorer tidak berjalan bersama mereka juga Anda tidak dapat menarik dan melepas file ke dalam Visual Studio untuk diedit. Anda harus membukanya melalui dialog buka file. Anda juga tidak dapat mengklik dua kali file apa pun yang terkait dengan Visual Studio dan membukanya di Visual Studio (selain dari solusi tampaknya) karena Anda akan mendapatkan pesan kesalahan yang mengatakan There was a problem sending the command to the program.Setelah saya hapus centang untuk selalu mulai dengan izin yang lebih tinggi (menggunakan VSCommands) maka saya akan Saya dapat membuka file secara langsung dan menjatuhkannya ke instance terbuka dari Visual Studio.

Pembaruan Untuk Keberanian: Meskipun tidak ada UI untuk mematikan UAC seperti di masa lalu, yang saya lihat setidaknya, Anda masih dapat melakukannya melalui registri. Kunci untuk mengedit adalah:

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

Setelah mengubah Windows ini akan meminta Anda untuk me-restart. Setelah dimulai kembali Anda akan kembali ke semua yang berjalan dengan izin admin jika Anda seorang admin. Masalah yang saya laporkan di atas sekarang hilang juga.

Brian Surowiec
sumber
9
Jika Anda mematikan UAC, beberapa aplikasi Metro, seperti SkyDrive tidak akan berfungsi lagi.
krisdyson
1
Untuk Windows 8, jawaban di bawah ini oleh TigerShark (klik kanan devenv.exe di explorer, atasi masalah ..) sepertinya solusi yang lebih lengkap.
James White
3
@ClaraOnager Klik kanan pada ikon di layar mulai dan pilih 'Buka lokasi file'. Ini akan membuka folder tempat pintasan disimpan dan kemudian Anda dapat melihat propertinya dari sana.
Brian Surowiec
19
@ Boomerangertanger Oh tidak, bukan aplikasi metro saya! </sarcasm>
Robert Christ
2
Aplikasi metro bergoyang. Akhir dari.
krisdyson
59

CATATAN dalam versi VS terbaru (2015+) tampaknya ekstensi ini tidak lagi ada / memiliki fitur ini.


Anda juga dapat mengunduh VSCommands untuk VS2012 oleh Squared Infinity yang memiliki fitur untuk mengubahnya agar dijalankan sebagai admin (serta beberapa bit dan potongan keren lainnya)

masukkan deskripsi gambar di sini

Memperbarui

Seseorang dapat menginstal perintah dari bilah menu Visual Studio menggunakan Tools-> Extensions and Updatesmemilih Onlinedan mencari di vscommandsmana kemudian seseorang memilih VSCommands for Visual Studio 20XXtergantung pada apakah menggunakan 2012 atau 2013 (atau lebih besar ke depan) dan mengunduh dan menginstal.

Tidak dicintai
sumber
2
Saya menginstal ini setelah saya memperbarui izin pintasan jadi saya tidak yakin apa yang dilakukannya berbeda. Izin admin selain plugin ini memiliki beberapa fitur bagus yang layak untuk dicoba sendiri.
Brian Surowiec
3
Fitur VSCommands juga berfungsi saat Anda memulai proyek dari menu akses cepat pintasan bilah tugas. Hal yang brilian!
Sean Kearon
@BrianSurowiec apa yang dilakukannya memasukkan sesuatu ke dalam startup VS sehingga jika tidak berjalan dengan admin ia membunuh dirinya sendiri dan memulai contoh baru dengan izin admin
Tidak dicintai
@DaveInCaz sayangnya benar. Saya pikir dia berhenti membuatnya. Saya telah mengedit jawaban untuk mencatat ini.
Tidak dicintai
36
  1. Pada Start Menu Windows 8 pilih Semua Aplikasi
  2. Klik kanan pada Visual Studio 2010 Icon
  3. Pilih Buka Lokasi File
  4. Klik kanan pada ikon shortcut Visual Studio 2010
  5. Klik tombol Lanjut
  6. Centang kotak Jalankan sebagai Administrator
  7. Klik OK
Lou
sumber
2
Jawaban yang bagus tetapi hanya akan berfungsi saat meluncurkan dari ikon, BUKAN jika Anda mengklik kanan ikon dan meluncurkan solusi yang disematkan. Sudah mencoba pada Windows 8 dan 10 dan hanya metode pemecahan masalah sejauh ini bekerja untuk saya dalam meluncurkan solusi yang disematkan.
djangojazz
23

Ini adalah salinan jawaban saya untuk posting serupa di SuperUser :

Opsi 1 - Atur VSLauncher.exe dan DevEnv.exe untuk selalu dijalankan sebagai admin

Agar Visual Studio selalu dijalankan sebagai admin saat membuka file .sln :

  1. Arahkan ke C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\VSLauncher.exe.
  2. Klik kanan VSLauncher.exedan pilih Troubleshoot kompatibilitas .
  3. Pilih program Troubleshoot .
  4. Centang off Program ini memerlukan izin tambahan dan tekan Next.
  5. Klik tombol Test the program ... untuk meluncurkan VS.
  6. Klik Berikutnya, lalu tekan Ya, simpan pengaturan ini untuk program ini , dan kemudian tutup buton.

Agar Visual Studio selalu dijalankan sebagai admin saat hanya membuka visual studio secara langsung , lakukan hal yang sama pada file DevEnv.exe. File-file ini terletak di:

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 2017

C:\Program Files (x86)\Microsoft Visual Studio\2017\[VS SKU]\Common7\IDE\devenv.exe

Opsi 2 - Gunakan ekstensi VSCommands untuk Visual Studio

Instal ekstensi VSCommands gratis untuk Visual Studio (ada di Galeri Visual Studio Extensions ) dan kemudian konfigurasikan untuk selalu memiliki Visual Studio mulai dengan hak admin dengan pergi ke Tools -> VSCommands -> Pilihan -> Peningkatan IDE -> Umum dan centang Always start Visual Studio with elevated permissionsdan klik tombol Simpan.

Catatan: VSCommands saat ini tidak tersedia untuk VS 2015, tetapi situs mereka mengatakan mereka sedang berupaya memperbaruinya untuk mendukung VS 2015.

Pendapat saya

Saya lebih suka Opsi 2 karena:

  • itu juga memungkinkan Anda untuk dengan mudah mematikan fungsi ini.
  • VSCommands hadir dengan banyak fitur hebat lainnya, jadi saya selalu menginstalnya.
  • itu lebih mudah dilakukan daripada opsi 1.
deadlydog
sumber
1
Windows 10 - setiap kali saya membuka file .sln VS 2015 menanyakan apakah saya ingin menyimpan perubahan ke devenv.exe
FrenkyB
1
@FrenkyB Apakah Anda melakukan langkah-langkah yang tercantum untuk Opsi 1 untuk VS 2015? Pengaturan untuk dijalankan karena admin harus memperbaiki masalah itu. stackoverflow.com/a/14423461/602585
deadlydog
1
Ini berfungsi sekarang. Saya baru saja menyimpan devenv.exe dan tidak mengeluh lagi.
FrenkyB
15

VSCommands tidak berfungsi untuk saya dan menyebabkan masalah ketika saya menginstal Visual Studio 2010 selain Visual Studio 2012.

Setelah beberapa percobaan saya menemukan trik:

Pergi ke HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layersdan tambahkan entri dengan nama "C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\VSLauncher.exe"dan nilainya "RUNASADMIN".

Ini harus menyelesaikan masalah Anda. Saya juga membuat blog tentang hal itu.

Daniel Lang
sumber
Untuk beberapa alasan ini tidak berhasil untuk saya, tetapi menambahkan entri HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layersmalah berhasil.
Piotr Szmyd
1
Apakah jawaban ini tidak identik secara fungsional dengan dua yang pertama?
Maury Markowitz
7

Saya tahu ini agak terlambat, tetapi saya baru tahu cara melakukan ini dengan memodifikasi (baca, "peretasan") manifes file devenv.exe. Saya seharusnya datang ke sini terlebih dahulu karena solusi yang disebutkan tampaknya sedikit lebih mudah, dan mungkin lebih didukung oleh Microsoft. :)

Begini cara saya melakukannya:

  1. Buat proyek dalam VS yang disebut "Exe Manifests". (Saya pikir versi apa pun akan berfungsi, tetapi saya menggunakan 2013 Pro. Juga, tidak masalah apa pun nama Anda.)
  2. "Tambahkan item yang ada" ke proyek, telusuri exe Visual Studio, dan klik Oke. Dalam kasus saya, itu adalah "C: \ Program Files (x86) \ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ devenv.exe".
  3. Klik dua kali pada file "devenv.exe" yang sekarang harus terdaftar sebagai file di proyek Anda. Itu harus memunculkan exe di editor sumber daya.
  4. Luaskan simpul "RT_MANIFEST", lalu klik dua kali pada "1" di bawahnya. Ini akan membuka manifes executable di editor biner.
  5. Temukan tag Tingkat Eksekusi yang diminta dan ganti "asInvoker" dengan "requireAdministrator". A la: <requestedExecutionLevel level="requireAdministrator" uiAccess="false"></requestedExecutionLevel>
  6. Simpan file.

Anda baru saja menyimpan salinan dari executable yang ditambahkan ke proyek Anda. Sekarang Anda harus mencadangkan yang asli dan menyalin exe yang telah dimodifikasi ke direktori instalasi Anda.

Seperti yang saya katakan, ini mungkin bukan cara yang tepat untuk melakukannya, tetapi tampaknya berhasil. Jika ada yang tahu tentang dampak negatif atau pukulan pergelangan tangan yang diperlukan yang perlu terjadi, silakan berboncengan!

Jim Strawn
sumber
Jika Anda melakukan ini, maka akan menjadi mustahil untuk menjalankan aplikasi sebagai LUser, dan tidak ada yang diizinkan untuk dijalankan dengan hak administratif kecuali mereka diwajibkan untuk alasan yang diketahui, bagus, (seperti IIS konfigurasi-otomatis)
EKW
6

Jika Anda menggunakan Total Commander seperti yang saya lakukan, Anda harus melakukan hal yang sama agar Total Commander dijalankan seperti biasa admin. Kemudian Anda akan dapat membuka file sql pada klik dua kali dalam contoh manajemen SQL Server yang sama, atau untuk membuka file Visual Studio pada klik ganda dan tidak memiliki banyak contoh terbuka.

Program Pemecahan Masalah ini menambahkan nilai registri ke HKEY_CURRENT_USER \ Software \ Microsoft \ Windows NT \ CurrentVersion \ AppCompatFlags \ Layers untuk program apa pun, jadi jika Anda ingin menulisnya langsung, Anda bisa.

drejKamikaza
sumber
1
Ini pada dasarnya menambahkan nilai string baru ke jalur registri itu, dengan nama menjadi jalur penuh ke executable (tanpa tanda kutip), dan data menjadi RUNASADMIN, jika Anda ingin melakukannya secara manual.
Ray
6

Saya menemukan cara sederhana untuk melakukan ini di EightForums ( Opsi 8 ), buat nilai string di bawah HKEY_CURRENT_USER \ Software \ Microsoft \ Windows NT \ CurrentVersion \ AppCompatFlags \ Layers. Atur nama ke path ke program dan nilainya menjadi ~ RUNASDMIN. Lain kali Anda membuka program itu akan terbuka sebagai administrator

[HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers]
    "C:\\Program Files (x86)\\Microsoft Visual Studio 12.0\\Common7\\IDE\\devenv.exe"="~RUNASADMIN"
Mike
sumber
6

Anda juga dapat memeriksa pemecahan masalah kompatibilitas

  • Klik kanan pada Visual Studio> pilih Troubleshoot kompatibilitas.
  • Pilih Program Pemecahan Masalah.
  • Periksa Program ini membutuhkan izin tambahan.
  • Klik pada Test program.
  • Tunggu sebentar hingga program diluncurkan. Klik Selanjutnya.
  • Pilih Ya, simpan pengaturan ini untuk program ini.
  • Tunggu untuk menyelesaikan masalah.
  • Pastikan status akhir sudah diperbaiki. Klik Tutup.

Periksa langkah-langkah detail, dan cara lain untuk selalu membuka VS karena Admin di Visual Studio mengharuskan aplikasi memiliki izin yang lebih tinggi .

Mohamed El-Qassas MVP
sumber
5

Temukan saja program di direktori Program Files (atau di lokasi lain). Klik kanan pada file EXE, pada tab kedua di bagian bawah centang kotak centang memaksa menjalankan program itu dengan hak administrasi. Mulai sekarang semua pintasan file exe akan dipecat dengan hak akses administrasi :)

BlueMan
sumber
1
Ini bekerja pada semua sistem di mana jendela Properties memiliki tab Kompatibilitas, yang Windows 8 tidak (walaupun Windows 8.1 melakukannya).
ThePyroEagle
2

Visual Studio memang naik sendiri secara otomatis jika manifes aplikasi proyek menentukan administrasi requestedExecutionLevel, jadi Anda hanya perlu mengeditnya. Visual Studio akan mendeteksi itu dan meluncurkan kembali dirinya sebagai administrator bila diperlukan.

beppe9000
sumber