[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[注册表类] 批处理怎样导入预设注册表?

我想通过批处理的方式导入一个注册表项,我想把所有的代码集中在一个批处理中,而不想通过:regedit /s lnk.reg 命令去读取那个注册表键值,请问如何在批处理实现导入以下注册表信息:

需要导入的注册表信息:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\.lnk]
@="lnkfile"
[HKEY_CLASSES_ROOT\.lnk\ShellEx]
[HKEY_CLASSES_ROOT\.lnk\ShellEx\{000214EE-0000-0000-C000-000000000046}]
@="{00021401-0000-0000-C000-000000000046}"
[HKEY_CLASSES_ROOT\.lnk\ShellEx\{000214F9-0000-0000-C000-000000000046}]
@="{00021401-0000-0000-C000-000000000046}"
[HKEY_CLASSES_ROOT\.lnk\ShellEx\{00021500-0000-0000-C000-000000000046}]
@="{00021401-0000-0000-C000-000000000046}"
[HKEY_CLASSES_ROOT\.lnk\ShellEx\{BB2E617C-0920-11d1-9A0B-00C04FC2D6C1}]
@="{00021401-0000-0000-C000-000000000046}"
[HKEY_CLASSES_ROOT\.lnk\ShellNew]
"Command"="rundll32.exe appwiz.cpl,NewLinkHere %1"

  1. @echo off
  2. reg add HKEY_CLASSES_ROOT\.lnk /ve /t REG_SZ /d "lnkfile" /f
  3. reg add HKEY_CLASSES_ROOT\.lnk\ShellEx\{000214EE-0000-0000-C000-000000000046} /ve /t REG_SZ /d "{00021401-0000-0000-C000-000000000046}" /f
  4. reg add HKEY_CLASSES_ROOT\.lnk\ShellEx\{000214F9-0000-0000-C000-000000000046} /ve /t REG_SZ /d "{00021401-0000-0000-C000-000000000046}" /f
  5. reg add HKEY_CLASSES_ROOT\.lnk\ShellEx\{00021500-0000-0000-C000-000000000046} /ve /t REG_SZ /d "{00021401-0000-0000-C000-000000000046}" /f
  6. reg add HKEY_CLASSES_ROOT\.lnk\ShellEx\{BB2E617C-0920-11d1-9A0B-00C04FC2D6C1} /ve /t REG_SZ /d "{00021401-0000-0000-C000-000000000046}" /f
  7. reg HKEY_CLASSES_ROOT\.lnk\ShellNew /v Command /t REG_SZ /d "rundll32.exe appwiz.cpl,NewLinkHere %%1" /f
复制代码
Do All in Command Line

TOP

非常感谢楼上的朋友帮助我解答,对于有多个值的,怎么处理。

比如:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\lnkfile]
@="快捷方式"
"EditFlags"=dword:00000001
"IsShortcut"=""
"NeverShowExt"=""

[HKEY_CLASSES_ROOT\lnkfile\CLSID]
@="{00021401-0000-0000-C000-000000000046}"
[HKEY_CLASSES_ROOT\lnkfile\shellex]
[HKEY_CLASSES_ROOT\lnkfile\shellex\ContextMenuHandlers]
[HKEY_CLASSES_ROOT\lnkfile\shellex\ContextMenuHandlers\Offline Files]
@="{750fdf0e-2a26-11d1-a3ea-080036587f03}"
[HKEY_CLASSES_ROOT\lnkfile\shellex\ContextMenuHandlers\{00021401-0000-0000-C000-000000000046}]
[HKEY_CLASSES_ROOT\lnkfile\shellex\DropHandler]
@="{00021401-0000-0000-C000-000000000046}"
[HKEY_CLASSES_ROOT\lnkfile\shellex\IconHandler]
@="{00021401-0000-0000-C000-000000000046}"
[HKEY_CLASSES_ROOT\lnkfile\shellex\PropertySheetHandlers]
[HKEY_CLASSES_ROOT\lnkfile\shellex\PropertySheetHandlers\ShimLayer Property Page]
@="{513D916F-2A8E-4F51-AEAB-0CBC76FB1AF8}"



另外能不能介绍下原理,或者相关的帖子、书籍都可以,目前正在摸索

TOP

[HKEY_CLASSES_ROOT\lnkfile]
@="快捷方式"
"EditFlags"=dword:00000001


等价于

[HKEY_CLASSES_ROOT\lnkfile]
@="快捷方式"
[HKEY_CLASSES_ROOT\lnkfile]
"EditFlags"=dword:00000001


自己看下reg add /?

TOP

LS的意思就是一个个来...事实上也只有这种方法...要不你先输出个reg文件再导入再DELETE掉?
OrzDEF

TOP

返回列表