注册表添加右键菜单快捷启动

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/whble/article/details/84983883

注册表(Registry,繁体中文版Windows操作系统称之为登录档)是Microsoft Windows中的一个重要的数据库,用于存储系统和应用程序的设置信息。早在Windows 3.0推出OLE技术的时候,注册表就已经出现。随后推出的Windows NT是第一个从系统级别广泛使用注册表的操作系统。但是,从Windows 95操作系统开始,注册表才真正成为Windows用户经常接触的内容,并在其后的操作系统中继续沿用至今。

上篇搭建好了msys开发环境,但是在使用中为了方便,我们把这个msys应用注册到右键菜单方便快捷启动。这里提供注册文件批处理文件两种方式。在配置时我们需要用到的是ico图标和shell命令文件。

注册文件:在目录下新建一个文件,命名为--“右键菜单msys2.reg”,在文件中输入如下代码。

Windows Registry Editor Version 5.00


[HKEY_CLASSES_ROOT\Directory\Background\shell\Mingw64]

@="MinGW &64 Bash Here"

"Icon"="H:\\msys64\\msys2.ico"


[HKEY_CLASSES_ROOT\Directory\Background\shell\Mingw64\command]

@="H:\\msys64\\msys2_shell.cmd -mingw64"

编写好了后保存,直接点击运行进行注册。完成后既可以在右键菜单看到注册好的软件,可以方便快捷启动。

批处理文件:在刚刚的注册文件中我们看到,其中路径需要绝对路径,这样当我们将配置好的msys拷贝到其他机器是就不能正常添加右键菜单,所以接下来我们使用批处理文件的方式来。同样在目录下新建一个文件命名为--“右键菜单msys2.bat”,编辑保存。

@echo off

set dir=%cd%

echo 正在注册MinGW64右键菜单...

REG ADD "HKEY_CLASSES_ROOT\Directory\Background\shell\Mingw64" /f /t REG_SZ /d "MinGW64 Bash"

REG ADD "HKEY_CLASSES_ROOT\Directory\Background\shell\Mingw64" /f /v "Icon" /t REG_SZ /d "%dir%\msys2.ico"

REG ADD "HKEY_CLASSES_ROOT\Directory\Background\shell\Mingw64\command" /f  /t REG_SZ /d "%dir%\msys2_shell.cmd -mingw64"

echo 注册完成

pause

exit

接下来运行bat文件提示如下:


补充关于reg命令说明:

  语法:reg add KeyName [/v EntryName|/ve] [/t DataType] [/s separator] [/d value] [/f]

  参数

  KeyName

  指定子项的完全路径。对于远程计算机,请在\\ComputerName\PathToSubkey中的子项路径前包含计算机名称。忽略ComputerName会导致默认对本地计算机进行操作。以相应的子目录树开始路径。有效子目录树为HKLM、HKCU、HKCR、HKU以及HKCC。远程机器上只有HKLM 和 HKU。

      

   值 :说明
  HKCR: HKEY_CLASSES_ROOT
  HKCU: HKEY_CURRENT_USER
  HKLM: HKEY_LOCAL_MACHINE
  HKU: HKEY_USERS
  HKCC: HKEY_CURRENT_CONFIG

  /v EntryName
  指定要添加到指定子项下的项名称。
  /ve
  指定添加到注册表中的项为空值。
  /t DataType
  指定项值的数据类型。DataType可以是以下几种类型:

  REG_SZ
  REG_MULTI_SZ
  REG_DWORD_BIG_ENDIAN
  REG_DWORD
  REG_BINARY
  REG_DWORD_LITTLE_ENDIAN
  REG_LINK
  REG_FULL_RESOURCE_DESCRIPTOR
  REG_EXPAND_SZ

  /s separator
  指定用于分隔多个数据实例的字符。

   /d value
  指定新注册表项的值。

  /f
  不用询问信息而直接添加子项或项。

  /?
  在命令提示符显示帮助。

  注释
  该操作不能添加子树。该版本的Reg在添加子项时无需请求确认。
  下表列出了reg add操作的返回值。值说明
  0成功
  1失败

猜你喜欢

转载自blog.csdn.net/whble/article/details/84983883