Wie öffne ich eine Datei zur Bearbeitung im Administratormodus?

49

Ich habe .config-Dateien so eingestellt, dass sie in Notepad ++ geöffnet werden. Die Dateien, die ich bearbeite, befinden sich normalerweise an geschützten Orten (z. B. c: \ windows \, ​​c: \ program files ..., etc ..) und erfordern daher Administratorzugriff.

Ich möchte in der Lage sein, auf eine .config-Datei zu doppelklicken und Notepad ++ mit Administratorrechten zu öffnen. Es ist in Ordnung, wenn die UAC-Eingabeaufforderung angezeigt wird.

Gibt es eine Möglichkeit, das zu tun?

AngryHacker
quelle

Antworten:

53

Am besten wechseln Sie direkt in den Ordner, in dem Notepad ++ installiert ist (Programme für 32-Bit-Windows und Programme (x86) für 64-Bit-Windows), suchen dort die ausführbare Datei Notepad ++, klicken Sie mit der rechten Maustaste darauf und wählen Sie Kompatibilität und aktivieren Sie unten das Kontrollkästchen Als Administrator ausführen.

Dadurch wird Ihre Anwendung immer mit einer UAC-Warnung angezeigt, Sie können sie jedoch immer als Administrator bearbeiten.

Viel Glück!

BEARBEITEN: Diesen Artikel gefunden , mit dem Sie die Verknüpfung erstellen können, ohne die UAC-Eingabeaufforderung zu starten. Es ist technisch für Windows 10, sollte aber auf Win7 + genauso funktionieren.

akseli
quelle
2
Wir können dies verbessern, indem wir eine Kopie der exe-Datei von Notepad ++ erstellen und nur die Kopie als Administrator festlegen. Auf diese Weise werden Sie nicht jedes Mal vom normalen Notizblock ++ dazu aufgefordert.
Joel Coehoorn
8
@JoelCoehoorn Dies kann über eine Verknüpfung anstelle einer vollständigen Kopie der Exe erfolgen (gehen Sie zur Advanced...Schaltfläche auf der ShortcutRegisterkarte des Eigenschaftenfensters der Verknüpfung, um sie zu aktivieren). Wenn Sie also den Editor ++ aktualisieren, werden sowohl Ihre nicht erhöhten als auch Ihre nicht erhöhten Dateien aktualisiert erhöhte Verknüpfungen.
Scott Chamberlain
und wie superuser.com/a/1462628/193963 beide Verknüpfungen zum Shell-Sendto-Menü setzen
Bernhard
19

Ich habe das für das Editorprogramm (zB Notepad ++) im Startmenü der Suche gefunden und dann mit der Eingabe Ctrl+ Shift+ Enterkann Sie das Programm als Administrator ausführen.

Sie sollten dann in der Lage sein, die Datei zu öffnen und zu bearbeiten, für die erhöhte Berechtigungen erforderlich sind.

elolos
quelle
3
Dies ist jedoch keine wirkliche Antwort auf die Frage, wie eine Datei zum Bearbeiten mit erhöhten Rechten geöffnet werden soll.
Der Hochstapler
Sie haben recht, Sie öffnen die Datei im Editor auf diese Weise und nicht durch Doppelklick.
Elolos
12

Als Verbesserung gegenüber @ Askelis Antwort können Sie zuerst eine Kopie des Notepad ++ ausführbar machen (nennen Sie es so etwas wie NotepadUAC). Stellen Sie dann den Kompatibilitätsmodus in den Eigenschaften Ihrer Kopie so ein, dass der von Askeli vorgeschlagene Administratormodus erforderlich ist. Jetzt sollten Sie auch in der Lage sein, Ihre .config-Dateien so einzurichten, dass sie nicht mehr im Original, sondern in der Kopie geöffnet werden.

Der Vorteil hierbei ist, dass die UAC-Eingabeaufforderung beim Öffnen von Dateien mit der ursprünglichen (Standard-) Notepad ++ .exe-Datei nicht angezeigt wird. Der Nachteil ist, dass diese Kopie nicht unbedingt auf die gleiche Weise wie das Original auf dem neuesten Stand ist und möglicherweise Probleme mit nicht übereinstimmenden DLL- oder Konfigurationsversionen verursacht. In diesem Fall ist es jedoch immer einfach genug, das Programm zu deinstallieren bzw. neu zu installieren.

Joel Coehoorn
quelle
@ Akseli Vorschlag funktioniert, aber ich sehe immer noch die UAC-Eingabeaufforderung. Jedenfalls kann ich damit leben.
AngryHacker
10

Meine Lösung bestand darin , Notepad ++ an die Taskleiste anzuheften. Wenn ich es für die Bearbeitung von Systemdateien benötige, klicke ich mit der rechten Maustaste darauf, klicke auf "Notepad ++" und klicke auf "Als Administrator ausführen".

Die anderen Lösungen, mit denen Sie die Verknüpfung ändern oder Kopien davon erstellen können, sind in Ordnung, wenn Sie ständig Systemdateien bearbeiten. Ich benutze Notepad ++ täglich, aber ich spiele nicht jeden Tag mit geschützten Dateien.

Marlon
quelle
6

Dies war nicht verfügbar, als die ursprüngliche Frage im Jahr 2010 veröffentlicht wurde, aber ab 2012 - die beste Antwort (zumindest, wie ich es sehe):

Installieren Sie nppSaveAsAdmin:

Von http://sourceforge.net/projects/nppsaveasadmin :

Mit diesem Plugin können Sie eine beliebige Datei als Administrator speichern. Drücken Sie einfach in Notepad ++ auf "Speichern". Wenn Sie diese Datei nicht als Benutzer ändern dürfen, speichert Notepad ++ sie als Administrator. Windows XP, Windows Vista, Windows 7, Windows 8 werden unterstützt.

Das Plugin "Save as admin" ist für eine schnelle und einfache Installation über den Notepad ++ Plugin Manager verfügbar. (Plugins / Plugin Manager / Plugin Manager anzeigen / Verfügbar. Aktivieren Sie "Als Administrator speichern" und klicken Sie auf "Installieren".)

Notepad ++ wird weiterhin wie gewohnt ausgeführt, ohne dass vollständige administrative UAC-Token erforderlich sind. Wenn Notepad ++ jedoch feststellt, dass Sie versuchen, eine Datei zu speichern, auf die Sie sonst keinen Zugriff haben, wechselt es zu NppAdminAccess.exe (und zeigt eine UAC-Eingabeaufforderung an). Klicken Sie einfach auf "Ja" und Ihre Datei wird mit Administratorrechten gespeichert.

ziesemer
quelle
2
  1. Erstellen Sie eine Kopie der EXE-Datei Ihres Texteditors im selben Programmordner und fügen Sie "Admin" oder ähnliches an den Namen an.
  2. Klicken Sie mit der rechten Maustaste auf die neue Exe -> Eigenschaften -> Kompatibilität -> Berechtigungsstufe -> Aktivieren Sie "Dieses Programm als Administrator ausführen".
  3. Erstellen Sie auf Ihrem Desktop / in der Taskleiste / im Startmenü eine Verknüpfung zu dieser Exe
  4. Ziehen Sie eine txt-Datei, die Sie als Administrator bearbeiten möchten (oder eine Verknüpfung zu einer), in diese Verknüpfung

Ist der einfachste / flexibelste Weg, den ich gefunden habe, um dies zu tun, wenn ich die Hosts-Datei für die Webentwicklung bearbeiten muss. Natürlich können Sie, wenn Sie nur alle Dateien einer Erweiterung als Administrator öffnen möchten, wie von Joel vorgeschlagen, die Option "Öffnen mit ..." -> "Standardprogramm auswählen" auf der von Ihnen erstellten Kopie verwenden.

Brad
quelle
1

Deinstallieren Sie die Plugins (außer Plugin Manager). Dies hat das Problem für mich behoben. Sie können jeweils ein Plugin installieren, um festzustellen, welche Plugins Probleme verursachen.

notepadpp student user
quelle
1

Die folgende Lösung lässt das Doppelklick-Szenario nicht wirklich zu, bietet Ihnen jedoch die Möglichkeit der Auswahl (und technisch gesehen sind es auch zwei Klicks):

Sie können dem Shell-Kontextmenü einen Menüeintrag "Als Administrator ausführen" für jeden Dateityp (oder besser für jedes Programm) hinzufügen. In diesem Artikel finden Sie Details zur Registrierungsoptimierung.

ctusch
quelle
1
@Ramhound Würden Sie sich bitte darum kümmern, den verlinkten Artikel zu lesen und Ihre Downvote zu überdenken? Oder weisen Sie alternativ darauf hin, auf welche Antwort Sie sich beziehen? Die Antwort von akseli löst immer die Benutzerkontensteuerung aus. Joel Coehoorns Antwort erforderte eine Kopie der .exe-Datei (die, wie bereits erwähnt, nicht automatisch aktualisiert wird). Außerdem wird immer die Benutzerkontensteuerung für den jeweiligen Dateityp ausgelöst. Marlons Antwort startet das Programm nur als Admin. Sie müssen die Datei weiterhin manuell in Notepad ++ öffnen. Und die Antwort des Benutzers von notepadpp studend ist nicht thematisch AFAICT.
CTUSCH
1

Der beste Weg ist, Notepad ++ so einzustellen, dass es als Administrator ausgeführt wird. Das Problem dabei ist, dass die Rechtsklick-Option nicht funktioniert. Also habe ich einen Ersatz für die Rechtsklick-Option gemacht, mit der die alte Option entfernt wird. Das Schöne an meinem Fix ist, dass ich ihn zur Verzeichniseinstellung in der Registrierung hinzugefügt habe. Nun können Sie mit der rechten Maustaste auf einen Ordner klicken und Mit Notepad ++ bearbeiten auswählen. Daraufhin werden alle Dateien in Notepad ++ geöffnet :). Ich mache viel VBScript-Programmierung. Das macht es mir einfach, alle meine Dateien zu bearbeiten und globale Änderungen vorzunehmen, wenn ich eine neue Methode finde, um etwas zu tun oder ein Objekt zu ändern.

Mein VBScript sichert die Registrierungsschlüssel, bevor sie geändert werden. Notepad ++ wird nicht als Administrator festgelegt. Klicken Sie dazu mit der rechten Maustaste auf die ausführbare Datei von Notepad ++ und ändern Sie sie, um als Administrator ausgeführt zu werden. Ich beginne zu erforschen, wie man dies zu einem Run as Administrator macht. Wenn ich darauf komme, bearbeite ich meinen Beitrag, sodass Sie die Möglichkeit haben, ihn als Administrator oder normal zu bearbeiten.

'==========================================================================================
' NAME:   New-OpenWithNotepad++(WinVista7).vbs
' EDITED:  Kevin Dondrea , Gordos-Dondrea Enterprises and Foundation
' DATE  : 8/12/2012
' COMMENT: This script Exports Registry keys and replaced Notepad++ Right Click options.
'   Works with Windows Vista and 7.  Also works for restricted Win XP accounts.
' WEB LINK:  
'==========================================================================================

Option Explicit

' =============== START ADD ADMIN RIGHTS ===============
' This adds the Admin Run Function for Windows Vista and 7
' You must put this at the top below computer and End If at the
' very end of the script
If WScript.Arguments.length = 0 Then
Set objShell = CreateObject("Shell.Application")
objShell.ShellExecute "WScript.exe", """" & _
WScript.ScriptFullName & """" &_
" RunAsAdministrator", , "runas", 1
Else
' Do not forget to add End If at the end of the script
' =============== END ADD ADMIN RIGHTS ===============

On Error Resume Next

' =============== START CONSTANT VARIABLES ===============
Const HKEY_CLASSES_ROOT   = &H80000000
Const HKEY_CURRENT_USER   = &H80000001
Const HKEY_LOCAL_MACHINE  = &H80000002
Const HKEY_USERS          = &H80000003
' =============== END CONSTANT VARIABLES ===============

' =============== START DIM VARIABLES ===============
Dim objFSO, objWrite2File, objShell, objReg, objRegistry, objWshShell
Dim strDate, strTime, strTime2, strFileName, strOpenFile
Dim strComputer, strCommand, strHostName, strUserName
Dim intRC, strKeyPath, strValueName, strValue
' =============== END DIM VARIABLES ===============

' --------------------------------------------------------------------------

' =============== START COMPUTER NAME, TIME and DATE ===============
strComputer = "."

' Reads registry for Computer Name
Set objShell = CreateObject("WScript.Shell")
' Edit or Add with Registrry Object
Set objReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & _ 
strComputer & "\root\default:StdRegProv")

' Same as above but used only to delete registry key
Set objRegistry=GetObject("winmgmts:\\" & _ 
strComputer & "\root\default:StdRegProv")

strHostName = objShell.RegRead ("HKLM\SYSTEM\CurrentControlSet\Services\" & _
        "Tcpip\Parameters\Hostname")
strUserName = objShell.RegRead ("HKLM\SOFTWARE\Microsoft\Windows NT\" & _
        "CurrentVersion\Winlogon\DefaultUserName")

' Retreives Date and Time
strTime = Right("0" & Hour(now()), 2) & Right("00" & _ 
    Minute(Now()), 2) & Second(Now())
strTime2 = Right("0" & Hour(now()), 2) & ":" & Right("00" & ":" & _ 
    Minute(Now()), 2) & ":" & Second(Now())
strDate = Right("0" & Month(now()), 2) & "-" & Right("00" & _ 
    Day(Now()), 2) & "-" & Year(Now())
' -----------------------------------------------------------

' =============== START BACKUP OF REGISTRY KEYS USED FOR ===============

' Original Command
' strCommand = "regedit /e <FilePath> <RegKey>"

' Local Machine ......
strCommand = "regedit /e " & strHostName & "-" & strDate & "-" & _ 
strTime & "-BackupLM-Notepad++.reg " & _ 
"""HKEY_LOCAL_MACHINE\SOFTWARE\Classes" & _ 
"\CLSID\{00F3C2EC-A6EE-11DE-A03A-EF8F55D89593}"""

Set objWshShell = WScript.CreateObject("WScript.Shell")
intRC = objWshShell.Run(strCommand, 0, TRUE)
If intRC <> 0 then
 WScript.Echo "Error returned from exporting Registry: " & intRC
Else
 WScript.Echo "No errors returned from exporting the Registry file"
End If
' =============== END BACKUP OF REGISTRY KEYS USED FOR ===============

' -----------------------------------------------------------

' =============== START NEW OPEN * SHELL COMMAND ===============
' Name of Registry Entry Key\Path
strKeyPath = "*\shell\Edit With Notepad++\command"
objReg.CreateKey HKEY_CLASSES_ROOT,strKeyPath

' Name of Registry Entry String
strValueName = ""
strValue = "C:\progra~1\notepad++\notepad++.exe %1"
objReg.SetStringValue HKEY_CLASSES_ROOT,strKeyPath,NULL,strValue

' =============== START NEW OPEN DIRECTORY SHELL COMMAND ===============
' Name of Registry Entry Key\Path
strKeyPath = "Directory\shell\Edit With Notepad++\command"
objReg.CreateKey HKEY_CLASSES_ROOT,strKeyPath

' Name of Registry Entry String
strValueName = ""
strValue = "C:\progra~1\notepad++\notepad++.exe %1"
objReg.SetStringValue HKEY_CLASSES_ROOT,strKeyPath,NULL,strValue

' -----------------------------------------------------------

strKeyPath = "*\shellex\ContextMenuHandlers\ANotepad++"
objRegistry.DeleteKey HKEY_CLASSES_ROOT,strKeyPath

strKeyPath = "SOFTWARE\Classes\CLSID\{00F3C2EC-A6EE-11DE-A03A-EF8F55D89593}\Settings"
objRegistry.DeleteKey HKEY_LOCAL_MACHINE,strKeyPath

' Ending Message
MsgBox"Notepad++ Right-Click Settings" & VbCrLf & _
"Have Been Created", ,"Click OK To Close Window"

' Cleans up Variables From Memory
Set objFSO = Nothing
Set objWrite2File = Nothing
Set objShell = Nothing
Set objReg = Nothing
Set objRegistry = Nothing
Set objWshShell = Nothing
Set strDate = Nothing
Set strTime = Nothing
Set strTime2 = Nothing
Set strFileName = Nothing
Set strOpenFile = Nothing
Set strComputer = Nothing
Set strCommand = Nothing
Set strHostName = Nothing
Set strUserName = Nothing
Set intRC = Nothing
Set strKeyPath = Nothing
Set strValueName = Nothing
Set strValue = Nothing

End If

Kevin
quelle
0

Eine andere Lösung besteht darin, das "Startmenü" zu öffnen, nach der Anwendung Notepad zu suchen und mit der rechten Maustaste darauf zu klicken. Klicken Sie anschließend auf "Als Administrator ausführen".

Sie können nun das Dateisystem (über "Editor / Datei / Öffnen ...") nach der Datei durchsuchen, die Sie bearbeiten möchten.

Jérôme
quelle
0

Nur eine einfache und effektive Methode:

  1. Erstellen Sie eine Verknüpfung auf dem Desktop (c: \ Programme \ Editor ++ \ Editor ++. exe -> Rechtsklick -> Senden an -> Desktop)
  2. Erstellen Sie eine Kopie dieser Verknüpfung, und fügen Sie der Verknüpfung _ADMIN hinzu
  3. Rechtsklick auf die Verknüpfung _ADMIN - Eigenschaften - Verknüpfung - Schaltfläche Erweitert - Häkchen bei "Als Administrator ausführen"
  4. öffne einen Dateiexplorer und tippe "shell: sendto"
  5. Ziehen Sie beide Verknüpfungen in den geöffneten Ordner und legen Sie sie dort ab

Jetzt haben Sie sowohl Notepad ++ als auch Notepad ++ _ ADMIN in Ihrer "SendTo" -Liste für jede Datei.

Shell Kontextmenü

Bernhard
quelle