找回密码
 加入
搜索
查看: 1728|回复: 2

[AU3基础] 调用XCACLS.vbs修改权限问题,请教.(已解决)

[复制链接]
发表于 2011-1-21 07:30:36 | 显示全部楼层 |阅读模式
本帖最后由 dearmb 于 2011-1-21 15:46 编辑

我看vbs的脚本,就是在cscript下执行E:\Scripthost\XCACLS.vbs 加参数
AU3,也是RunWait("cscript E:\Scripthost\XCACLS.vbs ……
objShell.Run("和RunWait("的内容应该是一样的阿

为什么一个成功一个不成功呢

=========================================================
这里是运行vbs脚本,修改权限成功,vbs的内容如下:
Set objShell = CreateObject("Wscript.Shell")
objShell.Run("cscript E:\Scripthost\XCACLS.vbs D:\EntrySystems\line6_G\Dictionary /g administrators:f /g system:f /g administrator:f /g ""operator checker group"":123456789B;123456789B /g ""operator group"":123456789B;123456789B /g ""operator supervisor group"":123456789B;123456789B  /g ""operator1 group"":123456789B;123456789B /f /t")
=========================================================
下面是AU3,修改权限失败,administrators,system,administrator以外的组被删掉了,AU3的内容如下:
        $Permissions=IniReadSection ($INIPath, "PermissionsChange" );获取字段名PermissionsChange中的所有关键字
            For $i = 1 To $Permissions[0][0];循环关键字
                RunWait($Permissions[$i][1]);运行修改権限脚本
                Next
                _FileWriteLog(@ScriptDir & "\updata.log","権限修改完成");记录権限修改完成
INI配置文件如下:

[PermissionsChange]
Permissions1=cscript E:\Scripthost\XCACLS.vbs D:\EntrySystems\Line6_G\Dictionary /g administrators:f /g system:f /g administrator:f /g ""operator checker group"":123456789B;123456789B /g ""operator group"":123456789B;123456789B /g ""operator supervisor group"":123456789B;123456789B  /g ""operator1 group"":123456789B;123456789B /f /t
 楼主| 发表于 2011-1-21 07:34:49 | 显示全部楼层
本帖最后由 dearmb 于 2011-1-21 07:46 编辑

这是用vbs执行的结果,红色部分是正常的,修改权限成功
Starting XCACLS.VBS (Version: 5.2) Script at 2011-1-21 7:12:43

Startup directory:
"E:\Scripthost"


Arguments Used:
        Filename = "D:\EntrySystems\line6_G\Dictionary"
        /F (All Files under current directory)
        /T (Traverse Directories)
        /G (Grant rights)
                administrators:F
                system:F
                administrator:F
                operator checker group:123456789B;123456789B
                operator group:123456789B;123456789B
                operator supervisor group:123456789B;123456789B
                operator1 group:123456789B;123456789B



- Changing /G user/group: "administrators" to "BUILTIN\Administrators"
- Changing /G user/group: "system" to "NT AUTHORITY\SYSTEM"
- Changing /G user/group: "administrator" to "ABPC3360\Administrator"
- Changing /G user/group: "operator checker group" to "ABPC3360\operator checke
r group"
- Changing /G user/group: "operator group" to "ABPC3360\operator group"
- Changing /G user/group: "operator supervisor group" to "ABPC3360\operator sup
ervisor group"
- Changing /G user/group: "operator1 group" to "ABPC3360\operator1 group"

************************************************************************
这是用au3执行的结果,红色部分组都没了,组没了,所以修改权限失败

Starting XCACLS.VBS (Version: 5.2) Script at 2011-1-21 7:13:12

Startup directory:
"D:\"


Arguments Used:
        Filename = "D:\EntrySystems\Line6_G\Dictionary"
        /F (All Files under current directory)
        /T (Traverse Directories)
        /G (Grant rights)
                administrators:F
                system:F
                administrator:F
                group:123456789B;123456789B
                group:123456789B;123456789B
                group:123456789B;123456789B
                group:123456789B;123456789B



- Changing /G user/group: "administrators" to "BUILTIN\Administrators"
- Changing /G user/group: "system" to "NT AUTHORITY\SYSTEM"
- Changing /G user/group: "administrator" to "ABPC3360\Administrator"
Can't find Account: "ABPC3360\GROUP"
Could not find /G user/group: "group" removing from list.
Can't find Account: "ABPC3360\GROUP"
Could not find /G user/group: "group" removing from list.
Can't find Account: "ABPC3360\GROUP"
Could not find /G user/group: "group" removing from list.
Can't find Account: "ABPC3360\GROUP"
Could not find /G user/group: "group" removing from list.

************************************************************************

绿色部分的Startup directory:不一样,但是我把我的脚本放到E:\Scripthost下执行,Startup directory内容一样了
但是修改权限还是失败
 楼主| 发表于 2011-1-21 08:53:54 | 显示全部楼层
$INIPath="d:\config.ini"
        $Permissions=IniReadSection ($INIPath, "PermissionsChange" );获取字段名PermissionsChange中的所有关键字
            For $i = 1 To $Permissions[0][0];循环关键字
                        MsgBox(0,"",$Permissions[$i][1])
                RunWait($Permissions[$i][1]);运行修改権限脚本
                Next


RunWait("cscript E:\Scripthost\XCACLS.vbs D:\EntrySystems\line5\settings /g administrators:f /g system:f /g administrator:f /g ""operator checker group"":123456789B;123456789B /g ""operator group"":123456789B;123456789B /g ""operator supervisor group"":123456789B;123456789B  /g ""operator1 group"":123456789B;123456789B /f")


直接runwait就好使,读取INI的就不好使,但变量内容一样啊
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-10-2 16:23 , Processed in 0.078235 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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