2010-12-06 21:54:08 +0000 2010-12-06 21:54:08 +0000
51
51

Come aprire un file per la modifica in modalità amministratore?

Ho i file .config impostati per essere aperti in Notepad++. I file che modifico sono tipicamente in posizioni protette (ad esempio c:\windows\, c:\file di programma…, ecc.) richiedendo così l'accesso come amministratore.

Mi piacerebbe essere in grado di fare doppio clic su un file .config e avere Notepad++ aperto con privilegi di amministratore. Va bene se viene visualizzato il prompt UAC.

C'è un modo per farlo?

Risposte (11)

54
54
54
2010-12-06 21:59:56 +0000

Il modo migliore è andare direttamente alla cartella in cui Notepad++ è installato (Program Files per Windows 32 bit e Program Files(x86) per Windows 64 bit), lì, trovare l'eseguibile di Notepad++, cliccarci sopra con il tasto destro e selezionare Compatibilità, e in fondo spuntare la casella per Esegui come amministratore.

Questo farà sì che la tua applicazione appaia sempre con un avviso UAC, ma avrai sempre la possibilità di modificare come amministratore.

Buona fortuna!

EDIT: Ho trovato questo articolo che ti permette di creare il collegamento senza lanciare il prompt UAC. Tecnicamente è per Windows 10, ma dovrebbe funzionare allo stesso modo su Win7+.

19
19
19
2012-08-31 10:15:27 +0000

Ho scoperto che cercando il programma di editing (ad esempio Notepad++) nel menu Start e poi digitando Ctrl+Shift+Enter si può eseguire il programma come amministratore.

Si dovrebbe quindi essere in grado di aprire e modificare il file che richiede privilegi elevati.

11
11
11
2010-12-06 22:10:52 +0000

Come miglioramento rispetto alla risposta di @Askeli , puoi prima fare una copia dell'eseguibile di notepad++ (chiamalo qualcosa come NotepadUAC). Quindi imposta la modalità di compatibilità nelle proprietà della tua copia per richiedere la modalità amministratore come suggerito da Askeli. Ora dovresti anche essere in grado di impostare i tuoi file .config per aprirli usando la copia piuttosto che l'originale.

Il vantaggio qui è che non vedrai il prompt UAC quando aprirai i file con il file .exe originale (predefinito) di Notepad++. Lo svantaggio è che questa copia non è necessariamente in grado di tenersi aggiornata come l'originale, e potrebbe causare problemi con versioni di .dll o config non corrispondenti. Ma è sempre abbastanza facile disinstallare/reinstallare se questo accade.

10
10
10
2010-12-07 05:14:49 +0000

La mia soluzione è stata quella di puntare Notepad++ sulla barra delle applicazioni. Quando ne ho bisogno per la modifica dei file di sistema ci clicco sopra con il tasto destro del mouse, clicco su “Notepad++” e clicco su “Esegui come amministratore”.

Le altre soluzioni che modificano il collegamento o ne fanno copie vanno bene se si modificano continuamente i file di sistema. Io uso Notepad++ quotidianamente, ma non faccio casino con i file protetti ogni giorno.

6
6
6
2014-11-04 16:01:38 +0000

Questo non era disponibile quando la domanda originale è stata postata nel 2010, ma dal 2012 - la migliore risposta (almeno come la considero io):

Installare nppSaveAsAdmin:

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

Questo plugin permette di salvare qualsiasi file come amministratore. Basta premere “Salva” in Notepad++ e se non siete autorizzati a modificare questo file come utente, Notepad++ lo salverà come amministratore. Sono supportati Windows XP, Windows Vista, Windows 7, Windows 8.

Il plugin “Salva come amministratore” è disponibile per un'installazione facile e veloce da Notepad++ Plugin Manager. (Plugins / Plugin Manager / Show Plugin Manager / Available. Seleziona “Salva come amministratore” e clicca su “Installa”).

Notepad++ continuerà a funzionare come al solito, e senza bisogno di essere eseguito con token UAC amministrativi completi. Tuttavia, se Notepad++ vede che stai cercando di salvare un file a cui non ti è permesso l'accesso, passerà a NppAdminAccess.exe (mostrando un prompt UAC). Fai semplicemente clic su “Sì”, e il tuo file verrà salvato con i privilegi amministrativi.

2
2
2
2012-12-31 20:24:09 +0000
  1. Fate una copia del .exe del vostro editor di testo nella stessa cartella dei file di programma e aggiungete “Admin” o simile al nome.
  2. Cliccate con il tasto destro del mouse sul nuovo exe -> Proprietà -> Compatibilità -> Livello di privilegio -> Selezionate “Esegui questo programma come amministratore”
  3. Crea un collegamento a questo exe sul tuo desktop / barra delle applicazioni / menu start
  4. Trascina un file txt che vuoi modificare come amministratore (o un collegamento ad uno) in questo collegamento

È il modo più facile / più flessibile che ho trovato per fare questo quando devo modificare il file hosts per lo sviluppo web. Naturalmente se vuoi solo aprire tutti i file di un'estensione come amministratore, secondo il suggerimento di Joel, puoi semplicemente usare il comando “apri con…” -> “Scegli il programma predefinito” sulla copia che hai creato.

1
1
1
2013-10-23 11:04:56 +0000

Il modo migliore è impostare Notepad++ per essere eseguito come amministratore. Il problema con questo è che rompe l'opzione del clic destro. Così ho fatto una sostituzione dell'opzione del clic destro che rimuove quella vecchia. La parte bella della mia soluzione è che l'ho aggiunta all'impostazione della directory nel registro. Così ora puoi fare clic destro su una cartella e scegliere Modifica con Notepad++ e si apriranno tutti i file in Notepad++ :). Faccio molta programmazione VBScript. Questo mi rende facile modificare tutti i miei file facendo cambiamenti globali quando mi viene in mente un nuovo metodo per fare qualcosa o cambiare un oggetto.

Il mio VBScript fa il backup delle chiavi di registro prima di cambiarle. Non imposta Notepad++ come amministratore, quindi devi farlo cliccando con il tasto destro del mouse sull'eseguibile di Notepad++ e cambiarlo per eseguirlo come amministratore. Sto iniziando a fare ricerche su come renderlo Run as Administrator. Quando mi verrà in mente, modificherò il mio post in modo che ti dia l'opzione di modificare come amministratore o di modificare normalmente.

'==========================================================================================
' 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
1
1
1
2012-02-16 19:10:28 +0000

Disinstalla i plugin (tranne plugin manager). Questo ha risolto il problema per me. Puoi installare un plugin alla volta per vedere quale plugin causa problemi.

1
1
1
2012-08-27 12:50:03 +0000

La seguente soluzione non consente realmente lo scenario del doppio clic, ma ti dà il potere di scelta (e tecnicamente sono anche due clic):

Puoi aggiungere una voce di menu ‘Esegui come amministratore’ al menu contestuale della shell su una base per tipo di file (o piuttosto per programma). Vedere questo articolo per i dettagli sulla regolazione del registro.

1
1
1
2019-07-22 11:27:37 +0000

solo un metodo semplice ed efficace:

  1. creare un collegamento sul desktop (c:\program files\notepad++\notpad++.exe -> click destro -> sendto -> desktop)
  2. creare una copia del collegamento e aggiungere _ADMIN al collegamento
  3. fare clic con il tasto destro del mouse sul collegamento _ADMIN - proprietà - collegamento - pulsante avanzato - spuntare “esegui come amministratore”
  4. aprire un file explorer e digitare “shell:sendto”
  5. trascinare e rilasciare entrambi i collegamenti nella cartella aperta

ora avete sia notepad++ che notepad++_ADMIN nella vostra lista “SendTo” per qualsiasi file.

0
0
0
2013-10-15 07:21:17 +0000

Un'altra soluzione è quella di aprire il “Menu Start”, cercare l'applicazione Notepad e cliccare con il tasto destro del mouse. Poi clicca su “Esegui come amministratore”.

Ora sei in grado di sfogliare il file system (attraverso “Notepad/File/Open…”) per il file che vuoi modificare.