Board logo

标题: [注册表类] 【已结】路径问题导致批处理添加注册表开机自启动程序不成功 [打印本页]

作者: zcdw    时间: 2009-1-26 17:02     标题: 【已结】路径问题导致批处理添加注册表开机自启动程序不成功

批处理修改注册表开机无法启动?
看了些帖子 自己写的批处理
但是无效啊
注册表键值没有改变增加啊
  1. reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v D1 /t REG_SZ /d %systemroot%\so\bord\Deamon.exe /f
复制代码

[ 本帖最后由 zcdw 于 2009-1-27 18:41 编辑 ]
作者: defanive    时间: 2009-1-26 17:38

Deamon.exe的路径不对吧。。。
作者: zcdw    时间: 2009-1-26 18:05

路径应该没有问题的
是用Total commander复制的

楼上好 啊 大过年的还来解答问题 新年快乐 o(∩_∩)o
作者: zcdw    时间: 2009-1-26 18:12

而且我现在用这个飞信做测试也不行啊
  1. reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v D1 /t REG_SZ /d d:\Program Files\China Mobile\Fetion\Fetion.exe /f
复制代码


是不是有的程序不能这么操作啊
我如果新建一个快捷方式丢到开始菜单启动项里还是可以开机自动启动这个程序的
而且这个时候注册表键值里会显示
作者: defanive    时间: 2009-1-26 19:18

看了下我的注册表,好像有环境变量的是不是要用 REG_EXPAND_SZ 格式啊?
飞信的是不是要用引号括住啊?
作者: zcdw    时间: 2009-1-26 19:39

http://www.cn-dos.net/forum/viewthread.php?tid=43697&fpage=1

http://www.cn-dos.net/forum/viewthread.php?tid=45869&fpage=1

换这个了REG_EXPAND_SZ
奇怪 我这里还是不行啊 好郁闷
作者: defanive    时间: 2009-1-26 19:56

不好分析,大家的电脑都不同,估计有什么软件拦截还是保护掉了。。。
看看errorlevel。。。
作者: zcdw    时间: 2009-1-27 12:54

errorlevel怎么用啊 搜索了一下

if %ERRORLEVEL% equ 0 echo 运行成功!

添加后 还是 一闪而过 不显示信息的

现在我又发现了一个问题
如果我在cmd下执行的话
reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v D1 /t REG_SZ /d "d:\Program Files"\China Mobile\Fetion\Fetion.exe /f

可以成功

但是用批处理就是不行 这该怎么办呢

[ 本帖最后由 zcdw 于 2009-1-27 13:05 编辑 ]
作者: defanive    时间: 2009-1-27 14:09

是不是HKEY_LOCAL_MACHINE要写成HKLM?
作者: wxcute    时间: 2009-1-27 14:27

HKEY_LOCAL_MACHINE 与 HKLM 一个意思,后者是前者缩写。
一般用 HKCU,而不用 HKLM。

注:HKCU 表示配置当前用户,HKLM 表示配置机器,即所有用户。

默认类型为字符串型,可以省略不写。
另:引号是将整个路径闭合。
reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v D1 /d "d:\Program Files\China Mobile\Fetion\Fetion.exe" /f

我原以为你机器都开不了了呢,呵呵。
标题可能这个更合适:注册表添加开机自启动程序不成功

[ 本帖最后由 wxcute 于 2009-1-27 14:30 编辑 ]
作者: zcdw    时间: 2009-1-27 14:41

谢谢楼上的 标题已经修改 但现在用批处理HKCU或 HKLM还是不行啊
作者: defanive    时间: 2009-1-27 14:47

注册表或者机器有问题了。。。

具体原因不清。。。
作者: wxcute    时间: 2009-1-27 14:50

请检查是否有杀毒软件等限制了使用批处理修改注册表。

在批处理最后一行添加 pause,运行后看是否返回成功信息。

最后列一下是什么系统,CMD 扩展版本号 echo %cmdextversion%,reg 版本。
如:XP SP3,扩展版本2,REG 版本 3.0。

[ 本帖最后由 wxcute 于 2009-1-27 14:55 编辑 ]
作者: zcdw    时间: 2009-1-27 15:16

原帖由 wxcute 于 2009-1-27 14:50 发表
请检查是否有杀毒软件等限制了使用批处理修改注册表。

在批处理最后一行添加 pause,运行后看是否返回成功信息。

最后列一下是什么系统,CMD 扩展版本号 echo %cmdextversion%,reg 版本。
如:XP SP3,扩展版 ...

谢谢斑竹啊
装的是卡巴 但是根本没有开啊 而且卡巴的注册表保护那一项也没有开启
如果限制的话 我怎么把它开启来?
360 和巡警ast也装了 但是都不开的 辅助杀毒才用的
系统是xp sp2 雨林木风的ghost纯净版 (扩展版本什么意思?) reg好像是5.1 看截图
cmd 中输入echo %cmdextversion%后出现一个2

  1. reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v D1 /d "d:\Program Files\China Mobile\Fetion\Fetion.exe" /f
  2. pause
复制代码


这个运行的话 还是一闪而过 看不到什么返回的信息啊
作者: taojunyi    时间: 2009-1-27 15:24

@echo off
reg add hklm\software\microsoft\windows\currentversion\run /v bat /t reg_expand_sz /d  c:\start.vbs
作者: zcdw    时间: 2009-1-27 15:27

taojunyi  那样也不行啊 ?
用vbs怎么将一个程序写入注册表启动项吗?
我用vbs试试吧
作者: wxcute    时间: 2009-1-27 15:36     标题: 回复 14楼 的帖子

会不会是文件编码出问题了,重新生成一个文本文件(注意不要复制原来那个BAT文件内容),可复制网页上的内容。

在 CMD 下执行
  1. echo reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v D1 /d "d:\Program Files\China Mobile\Fetion\Fetion.exe" /f>c:\xxoo.bat
复制代码
再找到 C:\ 盘下的 XXOO.bat 文件运行试下。
作者: zcdw    时间: 2009-1-27 16:12

我把我自己的拿到另外一个机子上还是不行

原帖由 wxcute 于 2009-1-27 15:36 发表
会不会是文件编码出问题了,重新生成一个文本文件(注意不要复制原来那个BAT文件内容),可复制网页上的内容。

在 CMD 下执行echo reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v D1 /d "d:\Pro ...


哎呀 还是斑竹厉害 用找到 C:\ 盘下的 XXOO.bat 文件运行可以成功添加

怎么回事啊 什么编码问题?
我写的别的批处理也可以运行的 啊 隐藏 copy文件 新建文件之类的都可以啊
作者: wxcute    时间: 2009-1-27 16:33

指的是记事本BUG,参阅:
http://bbs.bathome.net/viewthread.php?tid=2101
[ZT]字符集和编码:记事本无法显示"联通"二字的原因

还有一测试方法,将批处理拖放到 CMD 窗口中执行,如果有乱码或提示 ['xx' 不是内部或外部命令,也不是可运行的程序或批处理文件] 时就表明编码出了问题。

[ 本帖最后由 wxcute 于 2009-1-27 16:38 编辑 ]
作者: zcdw    时间: 2009-1-27 16:49

呵呵 还有这回事啊
可是我怎么解决这个问题啊?我保存的时候几种编码都试验了 还是不行?
不用记事本来写?
作者: zcdw    时间: 2009-1-27 17:01

UltraEdit-32
ha_EditPlus-v2.31.514
用了这2个软件复制你那个xxoo的批处理保存后的批处理还是不行啊
作者: wxcute    时间: 2009-1-27 17:28

简易方法:用 WORD 打开该批处理文件,另存为一个纯文本格式的文件编码选 “默认” 或 “MS-DOS” 均可。

注:记事本保存批处理文件时,只能选 ANSI 编码格式(必须选这个默认的),存为其他编码后运行不了。

[ 本帖最后由 wxcute 于 2009-1-27 17:31 编辑 ]
作者: defanive    时间: 2009-1-27 18:11

编码问题。。。
我都快晕死了。。。
这种问题千年等一回啊。。。
作者: zcdw    时间: 2009-1-27 18:23

感谢斑竹帮我找到问题所在 原来是路径问题

我原来的批处理在自己修改的桌面里 就不行 换个任意位置就可以了

e:\My Documents\Desktop\fetultra.BAT
作者: zcdw    时间: 2009-1-27 18:24

原帖由 defanive 于 2009-1-27 18:11 发表
编码问题。。。
我都快晕死了。。。
这种问题千年等一回啊。。。

也不是啦 更晕啊 路径问题
作者: defanive    时间: 2009-1-27 19:49

算了,多亏Windows播下的恶种。。。




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