Usuario del software
2010-12-06 21:54:08 +0000 2010-12-06 21:54:08 +0000
51

¿Cómo abrir un archivo para editarlo en modo administrador?

Tengo los archivos .config config configurados para abrirse en el Notepad++. Los archivos que edito suelen estar en ubicaciones protegidas (por ejemplo, c:\windows\, c:\program files..., etc..) por lo que requieren acceso de administrador.

Me gustaría poder hacer doble clic en un archivo .config y que el Notepad++ se abra con privilegios de administrador. Está bien si aparece el prompt UAC.

¿Hay alguna forma de hacerlo?

Respuestas [11]

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

La mejor manera de hacerlo es ir directamente a la carpeta en la que está instalado el Notepad++ (Archivos de programa para Windows de 32 bits y Archivos de programa(x86) para Windows de 64 bits), allí, encontrar el ejecutable del Notepad++, hacer clic con el botón derecho del ratón sobre él, y seleccionar Compatibilidad, y en la parte inferior marcar la casilla de Ejecutar como administrador.

Esto hará que su aplicación siempre aparezca con una advertencia UAC, pero siempre tendrá la capacidad de editar como administrador.

¡Buena suerte!

EDIT: Encontré este artículo que te permite crear el acceso directo sin lanzar el aviso UAC. Es técnicamente para Windows 10, pero debería funcionar igual en Win7+.

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

He descubierto que buscando el programa editor (por ejemplo, Notepad++) en el menú de Inicio y luego escribiendo Ctrl+Mayús+Enter te permite ejecutar el programa como administrador.

Entonces deberías poder abrir y editar el archivo que requiere privilegios elevados.

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

Como mejora respecto a la respuesta de @Askeli , puedes hacer primero una copia del ejecutable del notepad++ (Ponle un nombre como NotepadUAC). Luego establece el modo de compatibilidad en las propiedades de tu copia para requerir el modo de administrador como sugiere Askeli. Ahora también deberías poder configurar tus archivos .config para que se abran usando la copia en lugar del original.

La ventaja es que no verá el aviso UAC cuando abra los archivos con el archivo .exe original (por defecto) de Notepad++. La desventaja es que esta copia no necesariamente se va a mantener actualizada de la misma manera que el original, y podría eventualmente causar problemas con versiones de .dll o de configuración que no coincidan. Pero siempre es bastante fácil desinstalar/reinstalar si eso sucede.

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

Mi solución fue anclar el Notepad++ a la barra de tareas. Cuando lo necesito para editar archivos del sistema, hago clic con el botón derecho sobre él, hago clic en "Notepad++" y hago clic en "Ejecutar como administrador".

Las otras soluciones modificando el acceso directo o haciendo copias del mismo están bien si estás editando archivos del sistema todo el tiempo. Yo uso el Notepad++ a diario pero no me meto con archivos protegidos todos los días.

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

Esto no estaba disponible cuando se publicó la pregunta original en 2010, pero a partir de 2012 - la mejor respuesta (al menos como yo lo considero):

Instalar nppSaveAsAdmin:

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

Este plugin le permite guardar cualquier archivo como administrador. Sólo tienes que pulsar "Guardar" en el Bloc de notas++ y si no puedes modificar este archivo como usuario, el Bloc de notas++ lo guardará como administrador. Windows XP, Windows Vista, Windows 7, Windows 8 son compatibles.

El plugin "Guardar como administrador" está disponible para su rápida y fácil instalación desde el Gestor de Plugins de Notepad++. (Plugins / Gestor de plugins / Mostrar gestor de plugins / Disponible. Marque "Guardar como admin", haga clic en "Instalar").

Notepad++ seguirá ejecutándose como siempre, y sin necesidad de ejecutarse con tokens UAC administrativos completos. Sin embargo, si Notepad++ ve que estás intentando guardar un archivo al que no tienes acceso, se bifurcará a NppAdminAccess.exe (mostrando un aviso UAC). Simplemente haga clic en "Sí", y su archivo se guardará con privilegios administrativos.

6
2
2012-12-31 20:24:09 +0000
  1. Haga una copia del .exe de su editor de texto en la misma carpeta de archivos de programa y añada "Admin" o algo similar al nombre.
  2. Haga clic con el botón derecho en el nuevo exe -> Propiedades -> Compatibilidad -> Nivel de Privilegio -> Marque "Ejecutar este programa como administrador"
  3. Cree un acceso directo a este exe en su escritorio / barra de tareas / menú de inicio
  4. Arrastra un archivo txt que quieras editar como administrador (o un acceso directo a uno) a este acceso directo

Es la forma más fácil / flexible que he encontrado para hacer esto cuando tengo que editar el archivo hosts para el desarrollo web. Por supuesto, si sólo quieres abrir todos los archivos de una extensión como admin, según la sugerencia de Joel, puedes simplemente usar el comando "abrir con..." -> "Elegir programa por defecto" en la copia que has creado.

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

La mejor manera es configurar el Notepad++ para que se ejecute como administrador. El problema con eso es que rompe la opción de clic derecho. Así que hice un reemplazo a la opción de clic derecho que elimina la antigua. La parte buena de mi arreglo es que lo agregué a la configuración del Directorio en el Registro. Así que ahora puedes hacer clic derecho en una carpeta y elegir Editar con Notepad++ y se abrirán todos los archivos en Notepad++ :). Hago un montón de programación VBScript. Eso me facilita editar todos mis archivos haciendo cambios globales cuando se me ocurre un nuevo método para hacer algo o cambiar un objeto.

Mi VBScript hace una copia de seguridad de las claves del registro antes de cambiarlas. No configura el Notepad++ como administrador, así que hay que hacerlo haciendo clic con el botón derecho en el ejecutable del Notepad++ y cambiándolo para que se ejecute como administrador. Estoy empezando a investigar cómo hacer que se ejecute como administrador. Cuando se me ocurra eso editaré mi post para que te dé la opción de editar como Admin o editar 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  "

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

Desinstalar los plugins (excepto el gestor de plugins). Esto me solucionó el problema. Puedes instalar un plugin a la vez para ver qué plugin(s) causa(n) problemas.

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

La siguiente solución no permite realmente el escenario de doble clic, pero le da el poder de elección (y técnicamente también son dos clics):

Puede añadir un elemento de menú "Ejecutar como administrador" al menú contextual del shell por tipo de archivo (o más bien por programa). Vea este artículo para más detalles sobre el ajuste del registro.

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

un método sencillo y eficaz:

  1. crear un acceso directo en el escritorio (c:\program files\notepad++\notpad++.exe -> click derecho -> sendto -> desktop)
  2. crear una copia de ese acceso directo y añadir \ADMIN al acceso directo
  3. 3. hacer click con el botón derecho en el acceso directo _ADMIN - propiedades - acceso directo - botón avanzado - marcar "ejecutar como administrador"
  4. abrir un explorador de archivos y escribir "shell:sendto"
  5. arrastrar y soltar ambos accesos directos a la carpeta abierta

ahora tienes tanto notepad++ como notepad++_ADMIN en tu lista de "SendTo" para cualquier archivo.

Shell contextmenu

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

Otra solución es abrir el "Menú Inicio", buscar la aplicación Notepad y hacer clic con el botón derecho del ratón. A continuación, haga clic en "Ejecutar como administrador".

Ahora podrá navegar por el sistema de archivos (a través de "Bloc de notas/Archivo/Abrir...") en busca del archivo que desea editar.

0