仓库源文站点原文


layout: post title: 记事本Notepad2汉化版 categories:


2015-02-13 15:40:18

附: 将系统记事本替换为Notepad2

目前可用的方法有两种

删除系统中所有的notepad.exe, 并用Notepad2将其替换. 步骤如下:

  1. 结束记事本进程
  2. 提升权限
  3. 替换

参考批处理文件

<pre class="line-numbers" data-start="0"><code class="language-bash"># Language: bat @echo off takeown /f c:\windows\notepad.exe takeown /f c:\windows\system32\notepad.exe echo 请保存所有已打开的记事本文件 pause echo 正在结束记事本进程… taskkill /f /im notepad.exe 2>nul icacls %windir%\notepad.exe /grant %username%:f /t icacls %windir%\system32\notepad.exe /grant %username%:f /t copy /y Notepad2.exe %windir%\notepad.exe copy /y Notepad2.exe %windir%\system32\notepad.exe copy /y notepad2.ini %windir%\system32\notepad.ini echo 替换完成 notepad </code></pre>

此方法虽然可行, 但对系统进行了修改, 可能会引起问题.

此方法只修改注册表项, 比前一种方法更好. 具体步骤:

  1. 打开注册表创建如下注册表项:
    HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\notepad.exe
    如果无法修改, 需要先右键取得权限.
    杀毒软件系统保护功能可能导致无法创建, 若出现此情况, 请先关闭杀毒软件.
  2. 在notepad.exe注册表项中,创建名为Debugger的字符串值(REG_SZ)
  3. 修改字符串值Debugger的数据为Notepad2.exe的完整路径, 最后以/z参数结尾.
    "D:\Program Files\Notepad2\Notepad2.exe" /z

恢复时删除相应的注册表项即可.

上面的步骤可利用批处理文件或注册表文件实现.

批处理脚本

<pre class="line-numbers" data-start="0"><code class="language-bash"># Language: bat echo 请确认是以管理员权限运行本批处理文件! cd /d "%~dp0" reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\notepad.exe" /v "Debugger" /d "\"%~dp0Notepad2.exe\" /z" /f rem 恢复 rem reg delete "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\notepad.exe" /f </code></pre>

注册表文件

<pre class="line-numbers" data-start="0"><code class="language-bash"># Language: reg Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\notepad.exe] "Debugger"="\"D:\\Xpro\\Notepad2\\Notepad2.exe\" /z" ; 恢复 ; [-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\notepad.exe] </code></pre>