我正在尝试编写满足2个要求的VBScript: 它解锁用户的帐户。 它可以这样做,并使用samAccountName引用用户。 #1的作品。 然而,我得到的下面的脚本只能引用用户完整的AD名称。 ' UnlockUserAccount.vbs Option Explicit 'Get the arguments dim oArgs, strUser, strContainer set oArgs = WScript.Arguments strUser = "CN=" & trim(oArgs(0)) & "," strContainer = "OU=User Accounts,OU=Staff,OU=Org," ' Bind to Active Directory and get the user object dim objRootLDAP, objUser Set objRootLDAP = GetObject("LDAP://rootDSE") Set objUser = GetObject("LDAP://" & strUser & […]
我必须检查在Windows机器的服务,如果该服务不存在或处于停止状态,然后机器应提示一条消息,并在一段时间后自动重新启动。 我已经尝试了下面的一个,但它不工作..有人可以帮助完成这件事。 Option Explicit Const TITLE = "Service Check" Const SERVICE = "DHCP" Dim wmi Dim svcs,svc Set wmi = GetObject("winmgmts:\\.\root\cimv2") Set svcs = wmi.ExecQuery("Select * from Win32_Service where Name = 'DHCP'") If svcs.Count = 0 Then Call MsgBox(SERVICE & " service does not exist",vbCritical,Title) Call reboot(wmi) Else For Each svc In svcs If svc.State […]
我想向SYDI添加一段代码,它会返回特定文件的位置和大小。 例如,服务器“X”有一个DB文件和path,如下所示:“C:\ XYZ \ Database \ randomfilename.ext”,可以说是45 GB。 位置,名称和当然文件的大小在许多服务器中是不同的。 我希望它返回文件的位置(扩展名为“.ext”,可能至less在这些服务器中是唯一的):例如C:\ XYZ \ Database \和大小。 如果你能把我指向正确的方向,这将是非常有帮助的。 这是我迄今为止所尝试过的,即使有.ext文件也没有返回。 strComputer = "." Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") Set colFiles = objWMIService.ExecQuery _ ("Select * from CIM_DataFile Where Extension = 'ext'") For Each objFile in colFiles Wscript.Echo objFile.Drive & objFile.Path Wscript.Echo objFile.FileName & "." & objFile.Extension […]
我有一个很长的IP地址列表,我需要将其作为允许的中继添加到Windows Server 2008 R2上的内置SMTP服务(IIS 7.5,但SMTP使用旧的IIS 6.0pipe理器) 我知道如何手动添加允许的继电器,但有一个很长的名单,所以我正在寻求自动化。 有没有办法从命令行,脚本或其他自动化?
如果我有一堆名字的txt文件: 丹·史密斯吉姆·鲍勃·瑞安·琼斯等 使用VBScript可以将显示名称转换为AD用户名? 如果Powershell是唯一的select,你可以让我知道如何格式化我的文本文件运行。 我宁愿使用VBscript,但Powershell将工作。
我试图通过psexec远程运行.vbscript。 即使像-u -p -s -c这样的开关,我也会遇到错误。 这是我试过的: 1.) psexec -u user@domain -p password -s \\computer "\\uncpath\file.vbs" "access denied" 我已经看到,要解决这个问题,你可以添加registry主机和重新启动。 这不是我的select。 接下来我尝试了localpath的复制开关。 2.) psexec -u user@domain -p password -s \\computer -c "C:\localpath\file.vbs" "The system cannot find the file specified" 那么如何通过psexec运行.vbs脚本?
我有两个脚本。 两者都位于硬盘上的同一文件夹内。 “vbs”调用“bat”来检测usb是否运行一些命令。 我想把selectUSB的functionjoin到VBS中。 谢谢 usb.vbs Option Explicit On Error Resume next mensaje = MSGBOX ("Start USB fix", vbOKCancel, "USB fix") If mensaje = vbOK Then SCRIPT = "usb.bat" Set objShell = CreateObject("Wscript.Shell") strPath = Wscript.ScriptFullName Set objFSO = CreateObject("Scripting.FileSystemObject") Set objFile = objFSO.GetFile(strPath) strFolder = objFSO.GetParentFolderName(objFile) NewPath = objFSO.BuildPath(strFolder, SCRIPT) set objshell = createobject("wscript.shell") […]
试图执行: Set objWshShell = CreateObject("WScript.Shell") 出错: [![PS C:\Windows\system32> Set objWshShell = WScript.CreateObject("WScript.Shell") Set-Variable : A positional parameter cannot be found that accepts argument 'WScript.CreateObject'. At line:1 char:1 + Set objWshShell = WScript.CreateObject("WScript.Shell") + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidArgument: (:) \[Set-Variable\], ParameterBindingException + FullyQualifiedErrorId : PositionalParameterNotFound,Microsoft.PowerShell.Commands.SetVaria bleCommand][1]][1] 然而这工作: $WSH = New-Object -Com WScript.Shell $WSH.Run("explorer.exe""") 我试图运行这需要壳和上下文: Set […]
Set objFirewall = CreateObject("HNetCfg.FwMgr") Set objPolicy = objFirewall.LocalPolicy.CurrentProfile objPolicy.FirewallEnabled = FALSE 此脚本不再适用于Vista / 2008和Windows 7。 即使有海拔。 错误框显示“一个程序或防火墙是不是与这个版本的Windows兼容”
是否有可能通过GPO控制CMD属性,如窗口大小和屏幕缓冲区大小? (或者可以使用GPO推送的VBS脚本:) 我有Windows 7 / Windows Server 2008。 非常感谢您的build议。 烤面包