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

REG与CMD混合编程

http://www.366840202.cn/blog/post/REG2CMD.html 看到的创意:
批处理中经常需要使用注册表文件。一般的作法是使用命令
regedit /s 注册表文件.reg
其实根据.REG文件和.CMD文件的特性,可以合二为一。
.REG文件中,; 开头代表注释
.CMD文件中,; 开头并不影响执行。
所以可以从这个方面入手。

下面的代码可以保存为 .reg 或 .bat 文件,都是正确的:
  1. Windows Registry Editor Version 5.00
  2. ;@start regedit /s "%~f0" & exit /b
  3. [HKEY_CLASSES_ROOT\exefile\shell\/?\command]
  4. @="cmd /k \"%1\" /?"
复制代码
也可以不加分号;,因为除了 "a"="b"@="b" 这样的行会添加到注册表,其他的都不会:
  1. Windows Registry Editor Version 5.00
  2. goto 批处理代码
  3. [HKEY_CLASSES_ROOT\exefile\shell\/?\command]
  4. @="cmd /k \"%1\" /?"
  5. :批处理代码
  6. @echo off
  7. cls
  8. title REG与CMD混合编程
  9. echo 只要保证第一行为 reg 文件标识符就行了。
  10. echo.
  11. echo 只有 "a"="b" 或 @="b" 这样的行才会添加到注册表。所以不必担心批处理代码会添加到注册表。
  12. echo.
  13. echo 然后可以随时导入此“reg文件”:
  14. echo.
  15. echo 将执行 regedit /s %0
  16. echo.
  17. echo.
  18. pause
  19. start regedit /s "%~f0"
复制代码

[ 本帖最后由 tireless 于 2008-12-15 16:29 编辑 ]
3

评分人数

    • wxcute: 厉害,思维敏锐PB + 10
    • rat: 总觉得最好还是把批处理代码部分注释掉PB + 18
    • pusofalse:PB + 8

返回列表