域控电脑判断有没有安装某个软件

Dim Process '进程名
Dim path    '安装包位置 
Dim pakgeName '安装包名
Dim temp '临时存放路径
Dim oShell 
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
Set oShell= CreateObject("WScript.Shell")
Process = "firefox.exe"
path = "\\172.16.17.10\常用软件\浏览器\"'这里要\
pakgeName = "Firefox Setup 65.0.2.exe"
temp = "c:\networkAccess"'这里不要\

Set oExec = oShell.Exec("%COMSPEC% /C ""tasklist|find /i """ &Process&"""""")'Chr(34)表示双引号
if Not oExec.StdOut.AtEndOfStream then
    strText = oExec.StdOut.Readline()
    s = split(strText," ")
    strText = s(0)
    if  strcomp(Process,strText)<>0 then
        msgbox "没有chrome.exe" '\\172.16.17.10\常用软件\浏览器\Firefox Setup 65.0.2.exe
        if not fso.folderExists(temp) then
            set fld = fso.createfolder(temp)
        end if
        if not IsExitAFile(temp&"\"&pakgeName) then
            fso.CopyFile path&pakgeName,temp&"\"&pakgeName,False
        end if
        runProgamo(temp&"\"&pakgeName)

    else
        msgbox "有chrome.exe"
          
        if IsExitAFile(temp&"\"&pakgeName) then
            DeleteAFile(temp&"\"&pakgeName)
        end if
        if IsExitAFile(temp) then
            DeleteAFolder(temp)
        end if
    end if 
else
    msgbox "什么都没有找到"
    if not fso.folderExists(temp) then
            set fld = fso.createfolder(temp)
    end if  
   if not  IsExitAFile(temp&"\"&pakgeName) then
            msgbox "this 不存在"
            fso.CopyFile path&pakgeName,temp&"\"&pakgeName,False
    end if
    msgbox temp&"\"&pakgeName
    runProgamo(temp&"\"&pakgeName)
end if 


msgbox "end"

Function IsExitAFile(filespec)
        Dim fso
        Set fso=CreateObject("Scripting.FileSystemObject")        
        If fso.fileExists(filespec) Then         
        IsExitAFile=True        
        Else IsExitAFile=False        
        End If
End Function 



Sub CreateAFile(filespec)
        Dim fso
        Set fso=CreateObject("Scripting.FileSystemObject")
        fso.CreateTextFile(filespec)
End Sub


Sub DeleteAFile(filespec)
        Dim fso
        Set fso= CreateObject("Scripting.FileSystemObject")
        fso.DeleteFile(filespec)
End Sub


Function IsExitAFolder(filespec)
        Dim fso
        Set fso=CreateObject("Scripting.FileSystemObject")        
        If fso.folderExists(filespec) Then         
        IsExitAFolder=True        
        Else IsExitAFolder=False        
        End If
End Function 

Sub DeleteAFolder(filespec)
        Dim fso
        Set fso= CreateObject("Scripting.FileSystemObject")
        fso.Deletefolder(filespec)
End Sub

sub runProgamo(filespec)
        Dim objws
        Set objws=WScript.CreateObject("wscript.shell")
        objws.Run """"&filespec&"""",True
End sub

'Set oExec = oShell.Exec("%COMSPEC% /C ""PING 127.0.0.1""")
'Do While Not (oExec.StdOut.AtEndOfStream) 
    'strText = oExec.StdOut.Readline()
    'msgbox strText
'Loop


 

<think>好的,用户的问题是关于如何在服务器中限制客户端软件安装的配置方法,特别是使用GPO策略。首先,我需要回忆一下之前关于策略的知识,以及参考用户提供的引用内容。用户提供的引用1提到了的必要性,其中第一条就是取消用户的管理员权限,限制软件安装等,这直接相关。引用2详细说明了通过组策略配置壁纸的步骤,这可能对配置软件限制策略有参考价值,因为都是通过组策略管理来实现的。引用3涉及权限设置,但可能相关性较低,不过需要留意是否有权限相关的注意事项。 用户的需求是限制软件安装,所以核心应该是使用组策略中的软件限制策略或应用程序制策略。根据引用1中的信息,取消管理员权限是基础步骤,因为普通用户权限本身就无法安装软件,但可能还需要进一步限制,即使用户有权限,也能通过策略阻止安装。接下来,我需要考虑具体的步骤。首先,取消本地管理员权限,这可以通过组策略中的“受限组”或用户权限分配来实现。然后,配置软件限制策略,可能包括路径规则、哈希规则或证书规则。例如,禁止运行%AppData%和%LocalAppData%下的程序,因为很多安装程序会在这里运行。同时,可能需要启用应用程序制策略,如AppLocker,但AppLocker需要企业版或更高版本的Windows,所以需要确认用户的环境是否支持。另外,引用2中的步骤提到在组策略中编辑策略,配置管理模板下的设置,这类似软件限制的配置流程。需要指导用户找到正确的策略位置,如计算机配置或用户配置下的策略,并设置相应的规则。还需要考虑例外情况,比如允许某些必要的软件安装,可以通过创建白名单规则来实现。同时,测试和验证步骤很重要,确保策略生效且不影响正常业务。最后,生成相关问题,需要围绕用户可能进一步的问题,比如如何排除故障、例外处理、不同策略的区别等,帮助用户深入理解。</think>### 服务器限制客户端软件安装的配置方法(GPO策略) #### 一、核心实现原理 通过组策略(Group Policy Object, GPO)中的**软件限制策略**和**用户权限制**,限制客户端执行未授权的安装程序。主要依赖以下两个技术: 1. **取消用户管理员权限**(基础条件)[^1] 2. **配置软件安装白名单/黑名单**(增强制) --- #### 二、具体配置步骤 ##### 1. **取消本地管理员权限**(关键前置条件) - **路径**:`组策略管理 → /OU → 编辑GPO → 计算机配置 → 策略 → Windows设置 → 安全设置 → 受限制的组` - **操作**: - 添加新组 `Administrators`,设置成员为管理员账号(如 `DOMAIN\Domain Admins`) - 删除所有普通用户账号 ```plaintext # 强制生效命令(客户端执行) gpupdate /force ``` ##### 2. **配置软件限制策略** - **路径**:`组策略管理 → /OU → 编辑GPO → 计算机配置 → 策略 → Windows设置 → 安全设置 → 软件限制策略` - **规则类型**: - **路径规则**:阻止特定目录(如 `%AppData%\*.exe`) - **哈希规则**:禁止特定程序的哈希值 - **证书规则**:限制未签名的程序 ###### 示例:阻止所有非系统目录的安装程序 ```plaintext 1. 新建路径规则 → 路径:`%AppData%\**` → 安全级别:不允许 2. 新建路径规则 → 路径:`%LocalAppData%\**` → 安全级别:不允许 3. 默认规则设置为「不受限的」[^2] ``` ##### 3. **增强制(可选):AppLocker** - **适用系统**:Windows 企业版/教育版 - **路径**:`计算机配置 → 策略 → Windows设置 → 安全设置 → 应用程序制策略 → AppLocker` - **规则示例**: - 仅允许 `Program Files` 目录下的可执行文件 - 阻止所有 `.msi` 安装包 --- #### 三、验证与调试 1. **客户端强制更新策略**: ```powershell gpupdate /force ``` 2. **测试安装行为**: - 普通用户尝试安装软件时应弹出「权限不足」提示 - 检查事件查看器日志(事件ID 865/866) --- #### 四、例外情况处理 若需允许特定软件安装: - **方法1**:将安装程序路径加入白名单(如 `C:\Approved\*.exe`) - **方法2**:通过数字签名创建证书规则 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ben9518chen

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值