今天遇到一个问题就是用批处理命令修改注册表时遇到不懂的问题!以下是我编写的代码:
@echo off
echo Windows Registry Editor Version 5.00>>ok.reg
echo [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run]>>ok.reg
echo "key"="C:\\WINDOWS\\key.exe">>ok.reg
regedit /s ok.reg
del ok.reg
不知道有没有错的!这是REG文件里的代码:
Windows Registry Editor Version 5.00
[ Last edited by xuantian on 2006-4-11 at 16:05 ]作者: ken0212 时间: 2006-4-11 21:02 回复7楼:
你说的两种方法我都试过了.都是以失败告终.真的很郁闷.也不知道出现什么错误.7楼大哥你也可以自己试验一下.帮忙找一下是什么问题!也很希望高手来解答一下..~~
回复8楼:
我曾经看来有人用过setlocal命令和reg add 命令来修改注册表.以下是我看到的代码:
@echo off
setlocal
set regkey="HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\Licensing Core"
Windows Registry Editor Version 5.00>>aaa.reg
用上面的命令来建立注册表临时文件,并通过它来间接操作注册表是不正确的方法.
原因是:
通过这样操作保存的临时文件是超文本格式, 但 Windows Registry Editor Version 5.00 注册表却是(UniCode)双字节文本,NT的注册表一旦检测到注册表文件中的第一行为 Windows Registry Editor Version 5.00 时,就会将它最为二进制的NT注册表文件,理所当然的, 这个注册表文本也就被NT的注册表当作UniCode文本来出来了.