Board logo

标题: [注册表类] 批处理怎样添加自启动项? [打印本页]

作者: freesoft00    时间: 2011-9-15 22:50     标题: 批处理怎样添加自启动项?

批处理添加自启动项
  1. @echo off
  2. PUSHD %~dp0
  3. reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /f /v "auto" /t REG_SZ /d "\"%CD%\anti.exe\"
  4. exit
复制代码
怎么不成功,我的anti.exe文件和上面的批处理在一个目录里面的。这个"%CD%的变量就是当前目录吧。这样我的程序解压到哪个目录都可以实现自启动而不用写绝对路径了。是哪里的错,是reg参数有问题。

还有下面的代码,FoxitReader.exe绿色版的注册表键值添加批处理。批处理也是和FoxitReader.exe在一个目录。代码里面的\"%%1\" \"%%2\" \"%%3\" \"%%4\代表着什么,以前知道弄懂了。时间长了忘记什么意思了。
  1. @echo off
  2. PUSHD %~dp0
  3. SET TP=%CD%
  4. reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.pdf" /f /v "Progid" /t REG_SZ /d "FoxitReader.Document"
  5. reg add "HKCR\FoxitReader.Document" /f /ve /t REG_SZ /d "PDF Document"
  6. reg add "HKCR\FoxitReader.Document" /f /v "BrowseInPlace" /t REG_SZ /d "1"
  7. reg add "HKCR\FoxitReader.Document" /f /v "EditFlags" /t REG_DWORD /d 65536
  8. reg add "HKCR\FoxitReader.Document\DefaultIcon" /f /ve /t REG_SZ /d "%TP%\FOXITR~1.EXE,1"
  9. reg add "HKCR\FoxitReader.Document\Insertable" /f /ve /t REG_SZ /d ""
  10. reg add "HKCR\FoxitReader.Document\protocol\StdFileEditing\verb\0" /f /ve /t REG_SZ /d "&Edit"
  11. reg add "HKCR\FoxitReader.Document\shell\open\command" /f /ve /t REG_SZ /d "\"%TP%\FOXITR~1.EXE\" \"%%1\""
  12. reg add "HKCR\FoxitReader.Document\shell\print\command" /f /ve /t REG_SZ /d "\"%TP%\FOXITR~1.EXE\" /p \"%%1\" "
  13. reg add "HKCR\FoxitReader.Document\shell\printto\command" /f /ve /t REG_SZ /d "\"%TP%\FOXITR~1.EXE\" /t \"%%1\" \"%%2\" \"%%3\" \"%%4\" "
  14. reg add "HKCR\Applications\FOXITR~1.EXE\shell\open\command" /f /ve /t REG_SZ /d "\"%TP%\FOXITR~1.EXE\" \"%%1\""
  15. reg add "HKCR\Applications\FOXITR~1.EXE\shell\print\command" /f /ve /t REG_SZ /d "\"%TP%\FOXITR~1.EXE\" /p \"%%1\" "
  16. reg add "HKCR\Applications\FOXITR~1.EXE\shell\printto\command" /f /ve /t REG_SZ /d "\"%TP%\FOXITR~1.EXE\" /t \"%%1\" \"%%2\" \"%%3\" \"%%4\" "
  17. reg add "HKCU\Software\Foxit Software\Foxit Reader\LANGUAGE" /f /ve /t REG_SZ /d "40807d"
  18. reg add "HKCU\Software\Foxit Software\Foxit Reader\LoupeTool" /f /v "Position" /t REG_SZ /d "0000,0050,0425,0332"
  19. reg add "HKCU\Software\Foxit Software\Foxit Reader\LoupeTool" /f /v "Magnify" /t REG_SZ /d "200.000000"
  20. exit
复制代码

作者: Batcher    时间: 2011-9-16 08:39

因为要把双引号写入注册表,所以要用\对"进行转义。
因为要把百分号写入注册表,所以要用两个%。

%1代表第一个位置参数,%2代表第二个位置参数,参考:
http://bbs.bathome.net/viewthread.php?tid=2782#pid22365




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2