Können Sie Visual Studio zwingen, in Windows 8 immer als Administrator ausgeführt zu werden?

1013

In Windows 7 können Sie die Programmkompatibilitätseinstellungen aufrufen und abhaken, um immer als Administrator ausgeführt zu werden. Gibt es eine ähnliche Option in Windows 8?

Ich habe die Benutzerkontensteuerung auf meinen Computern immer deaktiviert und nach meinem Windows 8-Upgrade dasselbe getan, dachte ich. Es stellt sich heraus, dass es keine offOption gibt, nur die Benachrichtigungen auszuschalten.

Dies bedeutet, dass trotz der Mitgliedschaft in der Administratorgruppe nichts als Administrator ausgeführt wird. Ich muss meine Konsolen \ Visual Studio immer wieder schließen und wieder öffnen, wenn ich versuche zu debuggen (an Prozess anhängen, nicht F5), was sehr frustrierend ist.

Es ist wirklich ärgerlich, dass ich entweder daran denken muss, zusätzliche Schritte zu unternehmen, um es als Administrator zu öffnen, oder es anweisen muss, es zu schließen und erneut zu öffnen, wenn ich zum ersten Mal zum Debuggen gehe.

Brian Surowiec
quelle
6
Ich denke, dies ist hier eine gültige Frage, aber ich denke, Sie sollten sie auch bei SuperUser stellen - es kann eine allgemeine Antwort geben.
Preet Sangha
4
Wenn VS als Administrator gestartet werden muss, sind Ihre Dateiberechtigungen falsch. Sie sind leicht zu deaktivieren, wenn die Benutzerkontensteuerung deaktiviert ist.
KeatsPeeks
19
@ Keats Administratorrechte sind erforderlich, um eine ASP.NET-Anwendung auf IIS auszuführen (da versucht wird, das virtuelle Verzeichnis automatisch zu erstellen usw.)
codemonkeh
4
@camelBase Ich denke, Programme sollten nur bei Bedarf als Administrator ausgeführt werden. Normalerweise sollten sie unter niedrigeren Privilegien ausgeführt werden. Das ist, was ich tue.
VivekDev
1
Sie sollten es wirklich nicht tun, denn wenn Sie mit 2 Projekten arbeiten und nur eines als Administrator ausgeführt werden muss, sollten Sie die andere Instanz nicht als Administrator starten.
Phil1970

Antworten:

2013

In Windows 8 und 10 müssen Sie mit der rechten Maustaste klicken devenv.exeund "Fehlerbehebung bei der Kompatibilität" auswählen.

  1. Wählen Sie "Programm zur Fehlerbehebung"
  2. Aktivieren Sie "Das Programm erfordert zusätzliche Berechtigungen".
  3. Weiter klicken"
  4. Klicken Sie auf "Programm testen ..."
  5. Warten Sie, bis das Programm gestartet ist
  6. Weiter klicken"
  7. Wählen Sie "Ja, diese Einstellungen für dieses Programm speichern".
  8. Klicken Sie auf "Schließen"

Wenn Sie beim Öffnen von Visual Studio aufgefordert werden, Änderungen in devenv.sln zu speichern, lesen Sie diese Antwort, um es zu deaktivieren:

Deaktivieren Sie den Dialog zum Speichern der Visual Studio devenv-Lösung


Wenn Sie Ihre Meinung ändern und die Kompatibilitätseinstellung "Als Administrator ausführen" rückgängig machen möchten, lesen Sie die Antwort hier: So beheben Sie das nicht erkannte Guid-Format in Visual Studio 2015

Siewers
quelle
40
Dies ist die beste Lösung, die mir begegnet ist. Jetzt kann ich .sln-Dateien wieder aus dem Windows Explorer öffnen!
Max Schilling
39
Ebenso werden festgesteckte Lösungen aufgelöst, die als Administrator ausgeführt werden können. Vielen Dank.
Bern
183
Möglicherweise möchten Sie dies auch für die C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\VSLauncher.exeDatei tun, wenn Sie mehrere Versionen von Visual Studio installiert haben. Die Standardpfade zu den Dateien devenv.exe lauten außerdem: 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
tödlicher Hund
61
Wie können Sie dies auf das zurücksetzen, was es war?
Robert Koritnik
96
@RobertKoritnik Dies entspricht dem Hinzufügen eines Registrierungseintrags mit Name C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exeund Wert RUNASADMINunter HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers. Durch Entfernen des Eintrags wird die Einstellung zurückgesetzt.
Piotr Szmyd
168

Nachdem ich mir Super User angesehen hatte, fand ich diese Frage, die erklärt, wie dies mit der Verknüpfung auf dem Startbildschirm gemacht wird. Ebenso können Sie dasselbe tun, wenn Visual Studio an die Taskleiste angeheftet ist. An beiden Orten:

  1. Klicken Sie mit der rechten Maustaste auf das Visual Studio-Symbol
  2. Gehe zu Properties
  3. Unter der Shortcut tabAuswahlAdvanced
  4. Prüfen Run as administrator

Festlegen des Standardbetriebs im Admin-Modus

Im Gegensatz zu Windows 7 funktioniert dies nur, wenn Sie die Anwendung über die von Ihnen geänderte Verknüpfung starten. Nach dem Aktualisieren beider Visual Studio-Verknüpfungen scheint es auch zu funktionieren, wenn Sie eine Lösungsdatei aus dem Explorer öffnen.

Update-Warnung: Es sieht so aus, als ob einer der Hauptfehler beim Ausführen von Visual Studio mit erhöhten Berechtigungen darin besteht, dass der Explorer nicht mit diesen ausgeführt wird. Sie können Dateien nicht zur Bearbeitung in Visual Studio ziehen und dort ablegen. Sie müssen sie über den Dialog zum Öffnen von Dateien öffnen. Sie können auch nicht auf eine mit Visual Studio verknüpfte Datei There was a problem sending the command to the program.doppelklicken und sie in Visual Studio öffnen (abgesehen von Lösungen, wie es scheint), da die Fehlermeldung angezeigt wird : Wenn ich das Kontrollkästchen deaktiviere, um immer mit erhöhten Berechtigungen zu beginnen (mithilfe von VSCommands), werde ich ' Sie können Dateien direkt öffnen und in einer geöffneten Instanz von Visual Studio ablegen.

Update For The Daring: Obwohl es keine Benutzeroberfläche gibt, mit der die Benutzerkontensteuerung wie in der Vergangenheit deaktiviert werden kann, können Sie dies dennoch über die Registrierung tun. Der zu bearbeitende Schlüssel ist:

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

Nach dem Ändern dieses Windows fordert Sie zum Neustart auf. Nach dem Neustart kehren Sie zu allem zurück, was mit Administratorrechten ausgeführt wird, wenn Sie Administrator sind. Die Probleme, die ich oben gemeldet habe, sind jetzt ebenfalls verschwunden.

Brian Surowiec
quelle
9
Wenn Sie die Benutzerkontensteuerung deaktivieren, funktionieren einige Metro-Apps wie SkyDrive nicht mehr.
Krisdyson
1
Für Windows 8 scheint die folgende Antwort von TigerShark (Rechtsklick auf devenv.exe im Explorer, Fehlerbehebung ..) eine vollständigere Lösung zu sein.
James White
3
@ClaraOnager Klicken Sie mit der rechten Maustaste auf das Symbol im Startbildschirm und wählen Sie "Dateispeicherort öffnen". Dadurch wird der Ordner geöffnet, in dem die Verknüpfung gespeichert ist, und von dort aus können Sie die Eigenschaften anzeigen.
Brian Surowiec
19
@Boomerangertanger Oh nein, nicht meine Metro Apps! </ sarcasm>
Robert Christ
2
Die Metro-Apps rocken. Ende des.
Krisdyson
59

HINWEIS In neueren VS-Versionen (2015+) scheint diese Erweiterung nicht mehr vorhanden zu sein / diese Funktion zu haben.


Sie können auch VSCommands für VS2012 von Squared Infinity herunterladen, das eine Funktion zum Ändern als Administrator enthält (sowie einige andere coole Dinge).

Geben Sie hier die Bildbeschreibung ein

Aktualisieren

Sie können die Befehle über die Visual Studio-Menüleiste installieren, indem Sie Tools-> Extensions and Updatesauswählen Onlineund suchen, vscommandswo Sie dann auswählen, VSCommands for Visual Studio 20XXje nachdem, ob Sie 2012 oder 2013 (oder höher) verwenden und herunterladen und installieren.

Nicht geliebt
quelle
2
Ich habe dies installiert, nachdem ich die Verknüpfungsberechtigungen aktualisiert habe, sodass ich nicht sicher bin, was dies anders macht. Abgesehen von den Administratorrechten bietet dieses Plugin einige nette Funktionen, die es wert sind, selbst überprüft zu werden.
Brian Surowiec
3
Die VSCommands-Funktion funktioniert auch, wenn Sie ein Projekt über das Schnellzugriffsmenü einer Taskleiste starten. Geniales Zeug!
Sean Kearon
@BrianSurowiec, was es tut, hat etwas in den Start von VS gesteckt, so dass es sich selbst tötet, wenn es nicht mit admin ausgeführt wird, und eine neue Instanz mit der Administratorberechtigung startet
Nicht geliebt am
@ DaveInCaz leider wahr. Ich glaube, er hat aufgehört, es zu machen. Ich habe die Antwort bearbeitet, um dies zu notieren.
Nicht geliebt
36
  1. Wählen Sie im Windows 8-Startmenü Alle Apps
  2. Klicken Sie mit der rechten Maustaste auf das Visual Studio 2010-Symbol
  3. Wählen Sie Open File Location
  4. Klicken Sie mit der rechten Maustaste auf das Verknüpfungssymbol für Visual Studio 2010
  5. Klicken Sie auf die Schaltfläche Erweitert
  6. Aktivieren Sie das Kontrollkästchen Als Administrator ausführen
  7. OK klicken
Lou
quelle
2
Gute Antwort, funktioniert aber nur beim Starten über das Symbol, NICHT wenn Sie mit der rechten Maustaste auf das Symbol klicken und angeheftete Lösungen starten. Versucht unter Windows 8 und 10 und nur die Fehlerbehebungsmethode funktioniert bisher für mich beim Starten von fixierten Lösungen.
Djangojazz
23

Dies ist eine Kopie meiner Antwort auf einen ähnlichen Beitrag auf SuperUser :

Option 1 - Stellen Sie VSLauncher.exe und DevEnv.exe so ein, dass sie immer als Administrator ausgeführt werden

Damit Visual Studio beim Öffnen einer SLN-Datei immer als Administrator ausgeführt wird :

  1. Navigieren Sie zu C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\VSLauncher.exe.
  2. Klicken Sie mit der rechten Maustaste auf VSLauncher.exeund wählen Sie Fehlerbehebung bei der Kompatibilität .
  3. Wählen Sie Programm zur Fehlerbehebung .
  4. Abhaken Das Programm benötigt zusätzliche Berechtigungen und klicken Sie auf Weiter.
  5. Klicken Sie auf die Schaltfläche Programm testen ... , um VS zu starten.
  6. Klicken Sie auf Weiter, klicken Sie auf Ja, speichern Sie diese Einstellungen für dieses Programm und dann auf die Schaltfläche zum Schließen .

Damit Visual Studio beim direkten Öffnen von Visual Studio immer als Administrator ausgeführt wird , gehen Sie genauso mit den Dateien DevEnv.exe vor. Diese Dateien befinden sich unter:

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

Option 2 - Verwenden Sie die VSCommands-Erweiterung für Visual Studio

Installieren Sie die kostenlose VSCommands-Erweiterung für Visual Studio (in der Visual Studio-Erweiterungsgalerie ) und konfigurieren Sie sie so, dass Visual Studio immer mit Administratorrechten beginnt, indem Sie zu Extras -> VSCommands -> Optionen -> IDE-Verbesserungen -> Allgemein gehen und abhaken Always start Visual Studio with elevated permissionsund klicken Sie auf die Schaltfläche Speichern.

Hinweis: VSCommands ist derzeit nicht für VS 2015 verfügbar, die Website gibt jedoch an, dass derzeit daran gearbeitet wird, es zu aktualisieren, um VS 2015 zu unterstützen.

Meine Meinung

Ich bevorzuge Option 2, weil:

  • Außerdem können Sie diese Funktionalität einfach deaktivieren.
  • VSCommands bietet viele weitere großartige Funktionen, sodass ich es sowieso immer installiert habe.
  • Es ist einfach einfacher als Option 1.
tödlicher Hund
quelle
1
Windows 10 - jedes Mal, wenn ich .sln-Datei VS 2015 öffne, werde ich gefragt, ob ich Änderungen an devenv.exe speichern möchte
FrenkyB
1
@FrenkyB Haben Sie die für Option 1 für VS 2015 aufgeführten Schritte ausgeführt? Wenn Sie festlegen, dass es als Administrator ausgeführt wird, sollte das Problem behoben sein. stackoverflow.com/a/14423461/602585
tödlicher Hund
1
Es funktioniert jetzt. Ich habe gerade devenv.exe gespeichert und es beschwert sich nicht mehr.
FrenkyB
15

VSCommands funktionierte bei mir nicht und verursachte ein Problem, als ich Visual Studio 2010 neben Visual Studio 2012 installierte.

Nach einigen Experimenten fand ich den Trick:

Gehen Sie zu HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layersund fügen Sie einen Eintrag mit dem Namen "C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\VSLauncher.exe"und dem Wert hinzu "RUNASADMIN".

Dies sollte Ihr Problem lösen. Ich habe auch darüber gebloggt .

Daniel Lang
quelle
Aus irgendeinem Grund hat dies bei mir nicht funktioniert, aber das Hinzufügen des Eintrags HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layershat den Trick getan.
Piotr Szmyd
1
Ist diese Antwort funktional nicht identisch mit den ersten beiden?
Maury Markowitz
7

Ich weiß, dass dies etwas spät ist, aber ich habe gerade herausgefunden, wie das geht, indem ich das Manifest der Datei devenv.exe geändert (gelesen, "gehackt") habe. Ich hätte zuerst hierher kommen sollen, da die angegebenen Lösungen etwas einfacher zu sein scheinen und wahrscheinlich von Microsoft besser unterstützt werden. :) :)

So habe ich es gemacht:

  1. Erstellen Sie in VS ein Projekt mit dem Namen "Exe Manifests". (Ich denke, jede Version wird funktionieren, aber ich habe 2013 Pro verwendet. Außerdem spielt es keine Rolle, wie Sie es nennen.)
  2. "Vorhandenes Element hinzufügen" zum Projekt hinzufügen, zur Visual Studio-Exe navigieren und auf "OK" klicken. In meinem Fall war es "C: \ Programme (x86) \ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ devenv.exe".
  3. Doppelklicken Sie auf die Datei "devenv.exe", die jetzt als Datei in Ihrem Projekt aufgeführt werden soll. Es sollte die Exe in einem Ressourceneditor aufrufen.
  4. Erweitern Sie den Knoten "RT_MANIFEST" und doppelklicken Sie darunter auf "1". Dadurch wird das Manifest der ausführbaren Datei im Binäreditor geöffnet.
  5. Suchen Sie das angeforderteExecutionLevel-Tag und ersetzen Sie "asInvoker" durch "requireAdministrator". A la: <requestedExecutionLevel level="requireAdministrator" uiAccess="false"></requestedExecutionLevel>
  6. Speicher die Datei.

Sie haben gerade die Kopie der ausführbaren Datei gespeichert, die Ihrem Projekt hinzugefügt wurde. Jetzt müssen Sie das Original sichern und Ihre geänderte Exe in Ihr Installationsverzeichnis kopieren .

Wie gesagt, dies ist wahrscheinlich nicht der richtige Weg, aber es scheint zu funktionieren. Wenn jemand von einem negativen Fallout oder einer erforderlichen Ohrfeige weiß, die auftreten muss, melden Sie sich bitte!

Jim Strawn
quelle
Wenn Sie dies tun, wird es unmöglich, die App als LUser auszuführen, und es sollte nichts mit Administratorrechten ausgeführt werden dürfen, es sei denn, sie sind aus einem bekannten, guten Grund (z. B. der automatischen Konfiguration von IIS) erforderlich
EKW
6

Wenn Sie Total Commander wie ich verwenden, sollten Sie dasselbe tun, damit Total Commander immer als Administrator ausgeführt wird. Anschließend können Sie die SQL-Datei per Doppelklick in derselben SQL Server-Verwaltungsinstanz öffnen oder eine Visual Studio-Datei per Doppelklick öffnen, ohne dass mehrere Instanzen geöffnet sind.

Dieses Problembehandlungsprogramm fügt HKEY_CURRENT_USER \ Software \ Microsoft \ Windows NT \ CurrentVersion \ AppCompatFlags \ Layers für jedes Programm einen Registrierungswert hinzu. Wenn Sie es also direkt schreiben möchten, können Sie dies tun.

drejKamikaza
quelle
1
Grundsätzlich wird diesem Registrierungspfad ein neuer Zeichenfolgenwert hinzugefügt, wobei der Name der vollständige Pfad zur ausführbaren Datei (ohne Anführungszeichen) und die Daten der RUNASADMINFall sind , falls Sie dies manuell tun möchten.
Ray
6

Ich habe eine einfache Möglichkeit gefunden, dies in EightForums ( Option 8 ) zu tun. Erstellen Sie einen Zeichenfolgenwert unter HKEY_CURRENT_USER \ Software \ Microsoft \ Windows NT \ CurrentVersion \ AppCompatFlags \ Layers. Setzen Sie den Namen auf den Pfad zum Programm und den Wert auf ~ RUNASDMIN. Wenn Sie das Programm das nächste Mal öffnen, wird es als Administrator geöffnet

[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
quelle
6

Sie können auch die Fehlerbehebung bei der Kompatibilität überprüfen

  • Klicken Sie mit der rechten Maustaste auf Visual Studio, und wählen Sie Fehlerbehebungskompatibilität aus.
  • Wählen Sie Programm zur Fehlerbehebung.
  • Überprüfen Das Programm erfordert zusätzliche Berechtigungen.
  • Klicken Sie auf Programm testen.
  • Warten Sie einen Moment, bis das Programm gestartet wird. Weiter klicken.
  • Wählen Sie Ja, speichern Sie diese Einstellungen für dieses Programm.
  • Warten Sie, bis das Problem behoben ist.
  • Stellen Sie sicher, dass der endgültige Status festgelegt ist. Klicken Sie auf Schließen.

Überprüfen Sie die Detailschritte und andere Möglichkeiten, um VS immer als Administrator in Visual Studio zu öffnen, erfordert, dass die Anwendung über erhöhte Berechtigungen verfügt .

Mohamed El-Qassas MVP
quelle
5

Suchen Sie das Programm einfach im Verzeichnis "Programme" (oder an einem anderen Ort). Klicken Sie mit der rechten Maustaste auf die EXE-Datei. Aktivieren Sie auf der zweiten Registerkarte unten das Kontrollkästchen, um die Ausführung dieses Programms mit Administratorrechten zu erzwingen. Ab sofort werden alle Verknüpfungen der exe-Datei mit Administratorrechten ausgelöst :)

BlueMan
quelle
1
Dies funktioniert auf allen Systemen, auf denen das Eigenschaftenfenster eine Registerkarte Kompatibilität enthält, was Windows 8 nicht tut (obwohl Windows 8.1 dies tut).
ThePyroEagle
2

Visual Studio erhöht sich automatisch, wenn im Anwendungsmanifest des Projekts ein Administrator angegeben requestedExecutionLevelist. Sie müssen diesen also nur bearbeiten. Visual Studio erkennt dies und startet sich bei Bedarf als Administrator neu.

beppe9000
quelle