找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 97290|回复: 16

[系统相关] [已解决]批处理如何修改注册表的所有者?

[复制链接]
发表于 2013-4-13 21:37:17 | 显示全部楼层 |阅读模式
本帖最后由 522235677 于 2013-4-16 14:23 编辑

renini貌似只能设置权限啊。

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2013-4-14 16:44:55 | 显示全部楼层
试试SetACL.exe
 楼主| 发表于 2013-4-14 19:25:46 | 显示全部楼层
回复 2# Batcher


    这个是外部程序吧
发表于 2013-4-14 20:24:52 | 显示全部楼层
回复 3# 522235677


    是
发表于 2013-4-15 13:16:50 | 显示全部楼层
注册表的所有者
具体指什么?
发表于 2013-4-15 18:09:27 | 显示全部楼层
回复 5# 我来了


打开注册表编辑器
右键单击某个key
权限
高级
所有者
 楼主| 发表于 2013-4-15 19:30:13 | 显示全部楼层
回复 6# Batcher


    这个~我知道,我是说用批处理~
发表于 2013-4-15 19:52:03 | 显示全部楼层
批处理如何设置注册表项的权限
2007-12-21 20:12
红星闪闪0713 |  分类:Windows | 浏览2273次
请问大侠:如何利用批处理来设置注册表项的权限?

CACLS C:\windows\IGM.exe /T /E /C /D Everyone这个是设置文件夹权限

我需求的命令是:就像直接在注册表项上点鼠标右键---权限 。

谢谢大家了!

我有更好的答案
提问者采纳
检举| 2007-12-30 13:02
去百度下一个叫:SetAlc的软件来辅助设置,该软件使用方法如下:

setacl CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run /registry /deny administrator /full
rem 解释:
rem setacl:设置
rem CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run: 当前用户注册表分支启动RUN键值
rem registry:类型为注册表
rem deny:项目为拒绝访问
rem administrator:访问对象为administrator
rem full:权限是:完全访问
rem 简单的讲这句话的意思就是:
rem 将注册表HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run键值设置为administrator用户无法访问
rem 项目有四种 deny(拒绝) grant(允许)  set(设置) revoke(撤消)
rem 权限有两种 FULL 完全访问 READ 只读访问
rem 所以我们要恢复上面被拒绝的项只需要用一下下面的命令:
rem setacl CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run /registry /grant administrator /full
rem 下面是各个主分支开头部分的对照:
rem setacl machine\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /registry /deny administrator /full
rem setacl USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
rem setacl MACHINE\SYSTEM\CurrentControlSet\Services /registry
rem setacl CLASSES_ROOT\exefile\shell\open\command
rem setacl CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2 /registry /deny everyone /full
发表于 2013-4-15 21:50:54 | 显示全部楼层
非要用批处理的话,可以试试这个:

  1. @echo off
  2. rem 设置"HKEY_LOCAL_MACHINE\SOFTWARE\test"的所有者为:Everyone
  3. >>test.inf echo.[Version]
  4. >>test.inf echo.Signature = "$Chicago$"
  5. >>test.inf echo.
  6. >>test.inf echo.[Registry Keys]
  7. >>test.inf echo."MACHINE\Software\TEST", 0, "O:WD"
  8. secedit /configure /db test.sdb /cfg test.inf /log test.log
  9. del test.*
  10. pause
复制代码

评分

参与人数 2技术 +2 收起 理由
181912068 + 1 技术
522235677 + 1 技术

查看全部评分

 楼主| 发表于 2013-4-16 14:22:53 | 显示全部楼层
本帖最后由 522235677 于 2013-4-16 14:29 编辑

回复 9# lxzzr


    牛掰啊,好神奇。还从来没用到这命令。长见识了
如果是修改所有者为Admin要怎么搞呢?网上找了一圈也没找到方法
发表于 2013-4-16 17:04:51 | 显示全部楼层
回复 10# 522235677


    改“O:WD”为:“O:BA”
 楼主| 发表于 2013-4-16 22:11:46 | 显示全部楼层
回复 11# lxzzr


    这个什么原理?如果我还想修改其他人为所有者,那我自己要怎么改。
发表于 2013-4-18 17:39:30 | 显示全部楼层
本帖最后由 czjt1234 于 2013-4-18 17:47 编辑

搜索并测试了2个半小时

【改“O:WD”为:“O:BA”】
这里的WD BA是SID Strings
参见
http://msdn.microsoft.com/en-us/library/windows/desktop/aa379602(v=vs.85).aspx

测试环境:
工作组环境
可用用户2个 administrator  和  a
当前登录用户 a

按9楼的代码,逐个测试,查看所有者

AN        ANONYMOUS LOGON
AO        未知帐户(S-1-5-32-548)
AU        Authenticated Users
BA        Administrators
BG        Guests
BO        Backup Operators
BU        Users
CG        CREATOR GROUP
CO        CREATOR OWNER
ED        ENTERPRISE DOMAIN CONTROLLERS
IU        INTERACTIVE
LA        Administrator
LG        Guest
LS        LOCAL SERVICE
NO        Network Configuration Operators
NS        NETWORK SERVICE
NU        NETWORK
PO        未知帐户(S-1-5-32-550)
PS        SELF
PU        Power Users
RC        RESTRICTED
RD        Remote Desktop Users
RE        Replicator
RU        S-1-5-32-554
SO        未知帐户(S-1-5-32-549)
SU        SERVICE
SY        SYSTEM
WD        Everyone

以下SID Strings运行报错
CA
CD
DA
DC
DD
DG
DU
EA
HI
LW
ME
MU
PA
RO
RS
SA
SI

日志文件:

----配置注册表项...
错误 1337: 安全 ID 结构无效。
为对象 machine\software\test 建立安全描述符的错误。

        注册表项配置已完成,但有一个或多个错误。

但还不知道怎么更改为当前用户和指定用户

评分

参与人数 1技术 +1 收起 理由
181912068 + 1 全面

查看全部评分

发表于 2013-4-18 17:46:07 | 显示全部楼层
C:\WINDOWS\security\templates\compatws.inf
里面
[Registry Keys]

"MACHINE\Software",0,"D(A;CI;GRGWSD;;;BU)(A;CI;GRGWSD;;U)(A;CI;GA;;;BA)(A;CI;GA;;;SY)(A;CI;GA;;;CO)"

"MACHINE\Software\Classes",0,"D:P(A;CI;GR;;;BU)(A;CI;GR;;;PU)(A;CI;GRGWSD;;;IU)(A;CI;GA;;;BA)(A;CI;GA;;;SY)"

"MACHINE\Software\Classes\.acw",2,"D:P(A;CI;GR;;;BU)(A;CI;GR;;;PU)(A;CI;GA;;;BA)(A;CI;GA;;;SY)"

这个好像是SDDL
http://msdn.microsoft.com/en-us/library/windows/desktop/aa379570(v=vs.85).aspx
具体还没搞清楚

评分

参与人数 1技术 +1 收起 理由
522235677 + 1 3q

查看全部评分

发表于 2013-4-19 09:23:37 | 显示全部楼层
发现只能修改HKEY_LOCAL_MACHINE下的注册表

对子项不起作用
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 01:42 , Processed in 0.023598 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表