无忧启动论坛

标题: 有办法用bat设置注册表的项名称设为变量吗 [打印本页]

作者: kidzgy    时间: 2007-6-2 07:47
标题: 有办法用bat设置注册表的项名称设为变量吗
比如说:在注册表HKEY_USERS\下 看图,我机上的项的文件名称是S-1-5-21-3069012617-3666930025-993232964-500,而对于别的机,,这个名称就不同了.可是有办法,不管这项是什么名称,可以设为环境变量吗?设为%reg%类似.

20070602074319940.jpg (10.12 KB, 下载次数: 56)

20070602074319940.jpg

作者: kidzgy    时间: 2007-6-2 08:03
或是告诉我怎么得到本机上的那段长码就可以了.
作者: 风铃夜思雨    时间: 2007-6-3 23:00
reg query "HKU"

用for 处理提取出来就行了
作者: kidzgy    时间: 2007-6-4 12:26
能写出命令来吗?我不多会写哦。
作者: kidzgy    时间: 2007-6-7 06:40
各位仁兄帮帮忙嘛...
作者: kidzgy    时间: 2007-6-7 06:41
各位仁兄帮帮忙嘛...
作者: wjh6088    时间: 2007-6-7 15:04
批处理内容
  1. @echo off
  2. for /f "skip=15"  %%i in ('reg query "hku"') do set  reg=%%i&&goto end
  3. :end
  4. echo 项的名称是%reg%
  5. pause
复制代码
试试看,skip=的数值可能不同

[ 本帖最后由 wjh6088 于 2007-6-7 03:08 PM 编辑 ]
作者: kidzgy    时间: 2007-6-8 19:38
你真厉害,呵呵。
能不能把生成出来的%reg%中,去掉HKEY_USERS\ 留下后面的长码就可以了。
作者: wjh6088    时间: 2007-6-9 22:57
  1. @echo off
  2. for /f "skip=15"  %%i in ('reg query "hku"') do set  reg=%%i&&goto end
  3. :end
  4. echo 原项名称为%reg%
  5. set reg=%reg:~20,50%
  6. echo 处理后项的名称如下
  7. echo %reg%
  8. pause>nul
复制代码

作者: kidzgy    时间: 2007-6-10 08:06
真谢谢你。 我仔细观察了后,提取的是3069012617-3666930025-993232964-500 少了S-1-5-21-    (对于我这台机而言)  我修改了下
@echo off
for /f "skip=15"  %%i in ('reg query "hku"') do set  reg=%%i&&goto end
:end
set reg=%reg:~-44%
echo %reg%
pause>nul

作者: kidzgy    时间: 2007-6-17 07:51
我到了网吧后,运行批处理,提取出来的就不是那段长码了,而是别的,有没有万能点的,不管哪台机子都能取出那段长码




欢迎光临 无忧启动论坛 (http://wuyou.net./) Powered by Discuz! X3.3