메모장 ++에서 .config 파일을 열도록 설정했습니다. 편집 한 파일은 일반적으로 보호 된 위치 (예 : c : \ windows \, c : \ program files ... 등)에 있으므로 관리자 액세스가 필요합니다.
.config 파일을 두 번 클릭하고 관리자 권한으로 메모장 + +를 열 수있게하고 싶습니다. UAC 프롬프트가 나타나면 괜찮습니다.
그렇게 할 방법이 있습니까?
메모장 ++에서 .config 파일을 열도록 설정했습니다. 편집 한 파일은 일반적으로 보호 된 위치 (예 : c : \ windows \, c : \ program files ... 등)에 있으므로 관리자 액세스가 필요합니다.
.config 파일을 두 번 클릭하고 관리자 권한으로 메모장 + +를 열 수있게하고 싶습니다. UAC 프롬프트가 나타나면 괜찮습니다.
그렇게 할 방법이 있습니까?
답변:
가장 좋은 방법은 메모장 ++가 설치된 폴더 (32 비트 Windows의 경우 프로그램 파일 및 64 비트 Windows의 경우 프로그램 파일 (x86))로 바로 이동하여 메모장 ++ 실행 파일을 찾아 마우스 오른쪽 단추로 클릭 한 다음 선택하십시오. 호환성을 확인하고 하단에서 관리자 권한으로 실행 확인란을 선택하십시오.
이렇게하면 응용 프로그램이 항상 UAC 경고와 함께 팝업되지만 항상 관리자로 편집 할 수 있습니다.
행운을 빕니다!
편집 : UAC 프롬프트를 시작하지 않고 바로 가기를 만들 수있는 이 기사 를 찾았습니다 . 기술적으로 Windows 10 용이지만 Win7 +에서 동일한 방식으로 작동합니다.
Advanced...
버튼으로 이동 Shortcut
하여 활성화) notepad ++를 업데이트하면 비 상승 및 비 업데이트를 모두 업데이트합니다 높은 단축키.
시작 메뉴에서 편집기 프로그램 (예 : 메모장 ++)을 검색 한 다음 Ctrl+ Shift+ 를 입력 Enter하면 관리자 권한으로 프로그램 을 실행할 수 있습니다.
그런 다음 높은 권한이 필요한 파일을 열고 편집 할 수 있어야합니다.
@Askeli의 답변에 대한 개선 사항으로 , 우선 notepad ++ 실행 파일의 사본을 만들 수 있습니다 (NotepadUAC와 같은 이름을 지정하십시오). 그런 다음 Askeli에서 제안한대로 관리자 모드를 요구하도록 사본 속성에서 호환성 모드를 설정하십시오. 이제 원본이 아닌 복사본을 사용하여 .config 파일을 열도록 설정할 수도 있습니다.
여기서 장점은 원본 (기본) Notepad ++ .exe 파일로 파일을 열 때 UAC 프롬프트가 표시되지 않는다는 것입니다. 단점은이 복사본이 원본과 동일한 방식으로 항상 최신 상태를 유지하지 않아도되며 .dll 또는 구성 버전이 일치하지 않는 문제가 발생할 수 있다는 것입니다. 그러나 이런 일이 발생하면 항상 제거 / 다시 설치하기가 쉽습니다.
2010 년에 원래 질문이 게시되었을 때 사용할 수 없었지만 2012 년 기준으로 가장 좋은 대답입니다 (적어도 내가 생각 한대로).
nppSaveAsAdmin을 설치하십시오.
에서 http://sourceforge.net/projects/nppsaveasadmin :
이 플러그인을 사용하면 모든 파일을 관리자로 저장할 수 있습니다. Notepad ++에서 "저장"을 누르기 만하면이 파일을 사용자로 변경할 수 없으면 Notepad ++가 관리자로 저장합니다. Windows XP, Windows Vista, Windows 7, Windows 8이 지원됩니다.
"관리자로 저장"플러그인은 메모장 ++ 플러그인 관리자에서 빠르고 쉽게 설치할 수 있습니다. (플러그인 / 플러그인 관리자 / 플러그인 관리자 표시 / 사용 가능. "관리자로 저장"을 선택하고 "설치"를 클릭하십시오.)
Notepad ++는 전체 관리 UAC 토큰으로 실행할 필요없이 평소대로 계속 실행됩니다. 그러나 Notepad ++에서 액세스가 허용되지 않은 파일을 저장하려고하면 NppAdminAccess.exe로 분기됩니다 (UAC 프롬프트 표시). "예"를 클릭하면 파일이 관리자 권한으로 저장됩니다.
웹 개발을 위해 호스트 파일을 편집해야 할 때 내가 찾은 가장 쉽고 유연한 방법입니다. 물론 Joel의 제안에 따라 관리자로서 하나의 확장명을 가진 모든 파일을 열려면 생성 한 사본에서 "다음으로 열기 ..."-> "기본 프로그램 선택"을 사용하면됩니다.
플러그인을 제거하십시오 (플러그인 관리자 제외). 이것은 나를 위해 문제를 해결했습니다. 한 번에 하나의 플러그인을 설치하여 어떤 플러그인이 문제를 일으키는 지 확인할 수 있습니다.
다음 솔루션은 실제로 더블 클릭 시나리오를 허용하지 않지만 선택의 힘을 제공합니다 (기술적으로는 두 번의 클릭).
파일 유형별로 (또는 프로그램별로) 셸 컨텍스트 메뉴에 '관리자 권한으로 실행'메뉴 항목을 추가 할 수 있습니다. 레지스트리 조정에 대한 자세한 내용 은 이 기사 를 참조하십시오 .
가장 좋은 방법은 Notepad ++를 관리자 권한으로 실행하도록 설정하는 것입니다. 그 문제는 오른쪽 클릭 옵션을 깨뜨리는 것입니다. 그래서 이전 옵션을 제거하는 오른쪽 클릭 옵션을 대체했습니다. 내 수정의 좋은 부분은 레지스트리의 디렉토리 설정에 추가 한 것입니다. 이제 폴더를 마우스 오른쪽 버튼으로 클릭하고 메모장 ++로 편집을 선택하면 메모장 ++의 모든 파일이 열립니다 :). VBScript 프로그래밍을 많이합니다. 이를 통해 무언가를 수행하거나 객체를 변경하는 새로운 방법을 제안 할 때 전체적으로 변경되는 모든 파일을 쉽게 편집 할 수 있습니다.
내 VBScript는 레지스트리 키를 변경하기 전에 백업합니다. 메모장 ++을 관리자로 설정하지 않으므로 메모장 ++ 실행 파일을 마우스 오른쪽 버튼으로 클릭하고 관리자로 실행되도록 변경해야합니다. 관리자 권한으로 실행하는 방법을 연구하기 시작했습니다. 내가 글을 올리면 내 게시물을 편집하여 관리자로 편집하거나 정상적으로 편집하는 옵션을 제공합니다.
'==========================================================================================
' 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
간단하고 효과적인 방법 :
이제 모든 파일에 대해 "SendTo"목록에 notepad ++와 notepad ++ _ ADMIN이 모두 있습니다.