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

Comment ouvrir un fichier pour l'éditer en mode administrateur ?

J'ai des fichiers .config config configurés pour s'ouvrir dans Notepad++. Les fichiers que j'édite se trouvent généralement dans des emplacements protégés (par exemple c:\windows, c:\fichiers de programme…, etc…), ce qui nécessite l'accès de l'administrateur.

J'aimerais pouvoir double-cliquer sur un fichier .config et faire ouvrir Notepad++ avec les privilèges de l'administrateur. Ce n'est pas grave si l'invite de l'UAC apparaît.

Y a-t-il un moyen de faire cela ?

Réponses (11)

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

Le meilleur moyen est d'aller directement dans le dossier dans lequel le Notepad++ est installé (Program Files pour Windows 32 bit et Program Files(x86) pour Windows 64 bit), là, trouvez l'exécutable du Notepad++, cliquez dessus avec le bouton droit de la souris, et sélectionnez Compatibilité, et en bas, cochez la case Exécuter en tant qu'administrateur.

Ainsi, votre application apparaîtra toujours avec un avertissement UAC, mais vous aurez toujours la possibilité de l'éditer en tant qu'administrateur.

Bonne chance !

EDIT : Trouvé cet article qui vous permet de créer le raccourci sans lancer l'invite de l'UAC. C'est techniquement pour Windows 10, mais devrait fonctionner de la même manière sur Win7+.

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

J'ai constaté que la recherche du programme d'édition (par exemple Notepad++) dans le menu Démarrer, puis la frappe de Ctrl+Shift+Enter permet d'exécuter le programme en tant qu'administrateur.

Vous devriez alors pouvoir ouvrir et modifier le fichier qui nécessite des privilèges élevés.

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

En guise d'amélioration par rapport à @ la réponse d'Askeli , vous pouvez d'abord faire une copie de l'exécutable Notepad++ (Nommez le un peu comme NotepadUAC). Ensuite, réglez le mode de compatibilité dans les propriétés de votre copie pour qu'elle nécessite le mode administrateur comme suggéré par Askeli. Maintenant, vous devriez également pouvoir configurer vos fichiers .config pour qu'ils s'ouvrent en utilisant la copie plutôt que l'original.

L'avantage ici est que vous ne verrez pas l'invite UAC lorsque vous ouvrirez des fichiers avec le fichier Notepad++ .exe original (par défaut). L'inconvénient est que cette copie ne va pas nécessairement se maintenir à jour de la même manière que l'original, et pourrait éventuellement causer des problèmes avec des versions .dll ou de configuration non compatibles. Mais il est toujours assez facile de désinstaller/réinstaller si cela se produit.

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

Ma solution a été de pin Notepad++ à la barre des tâches. Lorsque j'en ai besoin pour éditer des fichiers système, je fais un clic droit dessus, je clique sur “Notepad++”, puis je clique sur “Run as administrator”.

Les autres solutions qui consistent à modifier le raccourci ou à en faire des copies conviennent si vous éditez des fichiers système en permanence. J'utilise Notepad++ tous les jours mais je ne touche pas aux fichiers protégés tous les jours.

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

Ce n'était pas disponible lorsque la question originale a été publiée en 2010, mais à partir de 2012 - la meilleure réponse (du moins telle que je la considère) :

Installer nppSaveAsAdmin:

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

Ce plugin vous permet d'enregistrer n'importe quel fichier en tant qu'administrateur. Il suffit d'appuyer sur “Save” dans Notepad++ et si vous n'êtes pas autorisé à modifier ce fichier en tant qu'utilisateur, Notepad++ l'enregistrera en tant qu'administrateur. Windows XP, Windows Vista, Windows 7, Windows 8 sont pris en charge.

Le plugin “Enregistrer en tant qu'administrateur” est disponible pour une installation rapide et facile à partir du gestionnaire de plugins Notepad++. (Plugins / Plugin Manager / Show Plugin Manager / Available. Cochez “Save as admin”, cliquez sur “Install”).

Notepad++ continuera à fonctionner comme d'habitude, et sans avoir besoin de fonctionner avec des jetons UAC administratifs complets. Cependant, si Notepad++ voit que vous essayez d'enregistrer un fichier auquel vous n'êtes pas autorisé à accéder, il bifurquera vers NppAdminAccess.exe (affichant une invite UAC). Il suffit de cliquer sur “Oui”, et votre fichier sera enregistré avec des privilèges administratifs.

2
2
2
2012-12-31 20:24:09 +0000
  1. Faites une copie du fichier .exe de votre éditeur de texte dans le même dossier de fichiers du programme et ajoutez “Admin” ou un nom similaire.
  2. Faites un clic droit sur le nouvel exe -> Propriétés -> Compatibilité -> Niveau de privilège -> Cochez “Exécuter ce programme en tant qu'administrateur”
  3. Créez un raccourci vers cet exe sur votre bureau / barre des tâches / menu de démarrage
  4. Faites glisser un fichier txt que vous voulez éditer en tant qu'administrateur (ou un raccourci vers celui-ci) dans ce raccourci

C'est la manière la plus facile / la plus souple que j'ai trouvée pour le faire lorsque je dois éditer le fichier hosts pour le développement web. Bien sûr, si vous voulez juste ouvrir tous les fichiers d'une extension en tant qu'administrateur, selon la suggestion de Joel, vous pouvez simplement utiliser le bouton “ouvrir avec…”. -> “Choisir le programme par défaut” sur la copie que vous avez créée.

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

Le meilleur moyen est de paramétrer Notepad++ pour qu'il fonctionne en tant qu'administrateur. Le problème avec cela est qu'il casse l'option de clic droit. J'ai donc remplacé l'option de clic droit par une autre qui supprime l'ancienne. La partie la plus intéressante de ma correction est que je l'ai ajoutée au réglage du répertoire dans le registre. Vous pouvez maintenant faire un clic droit sur un dossier et choisir “Edit with Notepad++” et cela ouvrira tous les fichiers dans Notepad++ :). Je fais beaucoup de programmation VBScript. Cela me permet de modifier facilement tous mes fichiers en effectuant des changements globaux lorsque je trouve une nouvelle méthode pour faire quelque chose ou modifier un objet.

Mon VBScript sauvegarde les clés du registre avant de les modifier. Il ne définit pas Notepad++ comme administrateur, vous devez donc le faire en cliquant avec le bouton droit de la souris sur l'exécutable Notepad++ et en le modifiant pour qu'il s'exécute en tant qu'administrateur. Je commence à chercher comment faire en sorte que ce soit un Run as Administrator. Lorsque j'y arriverai, je modifierai mon message pour qu'il vous donne la possibilité de l'éditer en tant qu'administrateur ou de le modifier normalement.

'==========================================================================================
' 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

Désinstallez les plugins (sauf le gestionnaire de plugins). Cela a réglé le problème pour moi. Vous pouvez installer un plugin à la fois pour voir quel(s) plugin(s) pose(nt) problème.

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

La solution suivante ne permet pas vraiment le scénario du double clic mais elle vous donne le pouvoir de choisir (et techniquement c'est aussi deux clics) :

Vous pouvez ajouter un élément de menu “Exécuter en tant qu'administrateur” au menu contextuel du shell par type de fichier (ou plutôt par programme). Voir cet article pour plus de détails sur la mise au point du registre.

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

juste une méthode simple et efficace :

  1. créer un raccourci sur le bureau (c:\programme files\notepad++\notpad++.exe -> click droit -> sendto -> desktop)
  2. créer une copie de ce raccourci et ajouter _ADMIN au raccourci
  3. clic droit sur le raccourci _ADMIN - propriétés - raccourci - bouton avancé - cocher “exécuter en tant qu'administrateur”
  4. ouvrir un explorateur de fichiers et taper “shell:sendto”
  5. glisser et déposer les deux raccourcis dans le dossier ouvert

maintenant vous avez à la fois notepad++ et notepad++_ADMIN dans votre liste “SendTo” pour n'importe quel fichier.

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

Une autre solution consiste à ouvrir le “Menu Démarrer”, à rechercher l'application Notepad et à cliquer avec le bouton droit de la souris. Cliquez ensuite sur “Exécuter en tant qu'administrateur”.

Vous pouvez maintenant naviguer dans le système de fichiers (via “Bloc-notes/Fichier/Ouvrir…”) pour trouver le fichier que vous souhaitez modifier.