返回顶部
首页 > 资讯 > 精选 >vbs脚本有哪些
  • 278
分享到

vbs脚本有哪些

2023-06-08 13:06:28 278人浏览 安东尼
摘要

这篇文章将为大家详细讲解有关vbs脚本有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 VBS   取得本机IP strComputer = "."&

这篇文章将为大家详细讲解有关vbs脚本有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

 VBS 
 取得本机IP
strComputer = "." 
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set IPConfigSet = objWMIService.ExecQuery("Select IPAddress from
Win32_NetworkAdapterConfiguration Where IPEnabled=TRUE")
For Each IPConfig in IPConfigSet 
If Not IsNull(IPConfig.IPAddress) Then 
For Each strAddress in IPConfig.IPAddress 
WScript.Echo strAddress 
Next 
End If 
Next  
2 取得本机计算机名 
 strComputer = "." 
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") 
Set colComputers = objWMIService.ExecQuery("Select * from Win32_ComputerSystem") 
For Each objComputer in colComputers 
Wscript.Echo objComputer.Name
Next 
4 检查升级包 
 strComputer = "." 
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") 
Set colOperatingSystems = objWMIService.ExecQuery("Select * from Win32_OperatingSystem") 
For Each objOperatingSystem in colOperatingSystems 
Wscript.Echo objOperatingSystem.ServicePackMajorVersion & "." &
objOperatingSystem.ServicePackMinorVersion
Next 
5 检查 Hot Fix 
 strComputer = "." 
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") 
Set colQuickFixes = objWMIService.ExecQuery ("Select * from Win32_QuickFixEngineering") 
For Each objQuickFix in colQuickFixes 
Wscript.Echo "Description: " & objQuickFix.Description 
Wscript.Echo "Hot Fix ID: " & objQuickFix.HotFixID 
Next 
6 检查本地管理员数目 
 Set objNetwork = CreateObject("Wscript.network") 
strComputer = objNetwork.ComputerName 
Set objGroup = GetObject("WinNT://" & strComputer & "/Administrators,group") 
For Each objUser in objGroup.Members 
Wscript.Echo objUser.Name 
Next 
7 磁盘系统 
 strComputer = "." 
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") 
Set colDisks = objWMIService.ExecQuery("Select * from Win32_LogicalDisk Where DriveType =
3") 
For Each objDisk in colDisks 
Wscript.Echo "Disk drive: "& objDisk.DeviceID & " -- " & objDisk.FileSystem 
Next 
8 检测自动登录是否开启 
 Const HKEY_LOCAL_MacHINE = &H80000002 
strComputer = "." 
Set objReg=GetObject("winmgmts:\\" & strComputer & "\root\default:StdRegProv") 
strKeyPath = "Software\Microsoft\windows NT\CurrentVersion\WinLoGon" 
strValueName = "AutoAdminLogon" 
objReg.GetDWordValue HKEY_LOCAL_MACHINE, strKeyPath, strValueName,dwValue 
If dwValue = 1 Then 
Wscript.Echo "Auto logon is enabled." 
Else 
Wscript.Echo "Auto logon is disabled." 
End If
9 关闭自动登录 
 Const HKEY_LOCAL_MACHINE = &H80000002 
strComputer = "." 
Set objReg=GetObject("winmgmts:\\" & strComputer & "\root\default:StdRegProv") 
strKeyPath = "Software\Microsoft\Windows NT\CurrentVersion\WinLogon" 
strValueName = "AutoAdminLogon" 
dwValue = 0 
oReg.SetDWORDValue HKEY_LOCAL_MACHINE, strKeyPath, strValueName, dwValue 
10 检查Guest是否禁用 
 Set objNetwork = CreateObject("Wscript.Network") 
strComputer = objNetwork.ComputerName 
Set objUser = GetObject("WinNT://" & strComputer & "/Guest") 
If objUser.AccountDisabled Then 
Wscript.Echo "The Guest account is disabled." 
Else 
Wscript.Echo "The Guest account is enabled." 
End If 
11 关闭Guest 
 Set objNetwork = CreateObject("Wscript.Network") 
strComputer = objNetwork.ComputerName 
Set objUser = GetObject("WinNT://" & strComputer & "/Guest") 
If objUser.AccountDisabled Then 
Wscript.Echo "The Guest account is already disabled." 
Else 
objUser.AccountDisabled = True 
objUser.SetInfo 
Wscript.Echo "The Guest account has been disabled." 
End If 
12 检索本地共象 
 strComputer = "." 
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") 
Set colShares = objWMIService.ExecQuery("Select * from Win32_Share") 
For each objshare in colShares 
Wscript.Echo "Name: " & objShare.Name 
Wscript.Echo "Path: " & objShare.Path 
Wscript.Echo "Type: " & objShare.Type 
Next 
13 脚本检索一个文件夹下.txt文件 汗哦 值得学习 
 Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
Set colFiles = objWMIService.ExecQuery("SELECT * FROM CIM_DataFile WHERE Path = '\\Documents
and Settings\\Administrator\\桌面\\' AND Drive = 'E:' AND Extension = 'txt'")
Wscript.Echo "Number of .txt files found: " & colFiles.Count 
for each aa in colFiles
NL=NL & vbcrlf & aa.name
next
Wscript.Echo NL 
14 我如何向用户显示一个用来选择文件的对话框? 
 问:
嗨,Scripting Guy!有没有什么方法可以让我使用脚本向用户显示一个对话框,供用户选择文件使用?
-- BF
答:
您好,BF。如果您使用的是 Windows 2000,我们不知道实现此操作的方法,至少操作系统中没有内置这
样的方法。但如果您使用的是 Windows XP,情况就不同了。在 Windows XP 上,您可以使用
“UserAccounts.CommonDialog”对象向用户显示一个标准的“文件打开”对话框。可以用类似以下代码
的脚本:
Set objDialog = CreateObject("UserAccounts.CommonDialog")
objDialog.Filter = "All Files|*.*" objDialog.InitialDir = "C:\" intResult =
objDialog.ShowOpen
If intResult = 0 Then Wscript.Quit Else Wscript.Echo objDialog.FileName End If 
这是一个小脚本,所以让我们逐行进行解释吧。我们首先创建一个对 UserAccounts.CommonDialog 对象
的对象引用(名为“objDialog”)。接着,我们设置对话框的“筛选”属性。我们要显示所有文件,所
以我们将筛选设置成这样:
objDialog.Filter = "All Files|*.*" 
假如我们只想显示文本文件,那该怎么办?在这种情况下,我们将使用以下筛选:
objDialog.Filter = "Text Files|*.txt" 
您也许能够看出它是如何运行的:我们为文件类型提供说明 (Text Files),然后插入一个竖线分隔符
(|),最后使用标准的通配符来指示所有 .txt 文件 (*.txt)。是不是想默认显示 .txt 文件,然后为用
户提供查看所有文件的选项?那么可以使用以下代码:
objDialog.Filter = "Text Files|*.txt|All Files|*.*" 
试一试,您就明白我们的意思了。
然后,我们指定默认文件夹。默认情况下,我们希望对话框显示位于驱动器 C 的根文件夹中的文件,所
以我们这样设置“InitialDir”属性:
objDialog.InitialDir = "C:\" 
希望显示 C:\Windows 文件夹中的文件吗?那么可以使用以下代码:
objDialog.InitialDir = "C:\Windows" 
不必担心:这是一个真正的“文件打开”对话框,所以您可以随意单击,并且可以随时停下来。您从
C:\Windows 开始并不意味着您只能打开该文件夹中的文件。
最后,我们使用下面这行代码显示对话框:
intResult = objDialog.ShowOpen 
现在,我们只需坐下来,等待用户选择文件并单击“确定”(或者等待用户单击“取消”)。如果用户单
击“取消”,则变量 intResult 将被设置为 0。在我们的脚本中,我们检查 intResult 的值,如果是 0
,我们将只需要使用 Wscript.Quit 来终止此脚本。
但是如果用户实际上选择了文件并单击了“确定”,那该怎么办?在这种情况下,intResult 将被设置为
-1,“FileDialog”属性将被设置为所选文件的路径名。我们的脚本只回显路径名,这意味着我们将得到
类似以下内容的输出:
C:\WINDOWS\Prairie Wind.bmp 
不用说,您并不局限于只回显文件路径。实际上,您可以使用 WMI、FileSystemObject 或一些其他技术
来绑定该文件,然后对其执行删除、复制、压缩或检索文件属性等操作 — 您对文件能够执行的操作差不
多都可以对它执行。
但无论如何,您都需要使用脚本。
顺便说一句,使用此方法,您一次只能选择一个文件,而不能按住“Ctrl”键选择多个文件。有一种方法
可以选择多个文件,至少在 XP 计算机上可以,但是我们只能将此问题留到以后的专栏中讨论了。 
15 我如何确定进程是在哪个帐户下运行的? 
 问:
嗨,Scripting Guy!我有一个脚本,它返回关于计算机上运行的所有进程的信息,只是我不知道如何获
得这些进程在其下运行的用户帐户的名称。您可以帮助我吗?
-- DL
答:
您好,DL。是的,我们可以帮助您。确定进程是在哪个帐户下运行的,实际上相当简单,只是如何着手执
行此操作并不是特别显而易见的。如果您与大多数人一样,那么您可能会通过扫描 Win32_Process 类的
属性来查找名为 Account 或 UserName 或类似的属性。您很有可能找不到。出现这种情况的原因是:
Win32_Process 没有可以告诉您进程在哪个帐户下运行的属性。
您需要使用“GetOwner”方法来捕捉此信息。下面这个脚本可以告诉您 Microsoft Word (Winword.exe)
在哪个帐户下运行:
strComputer = "."Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colProcessList = objWMIService.ExecQuery _ ("Select * from Win32_Process Where Name =
'Winword.exe'")
For Each objProcess in colProcessList objProcess.GetOwner strUserName, strUserDomain
Wscript.Echo "Process " & objProcess.Name & " is owned by " _ & strUserDomain & "\" &
strUserName & "."Next 
我们最感兴趣的是下面这行代码:
objProcess.GetOwner strNameOfUser, strUserDomain 
我们在此所做的就是调用“GetOwner”方法。GetOwner 返回两个“输出参数”,一个返回负责该进程的
用户的名称,一个返回该用户所属的域。为捕获这两个输出参数,我们需要为 GetOwner 方法提供两个变
量。在这个示例脚本中,我们使用了两个分别叫做 strUserName 和 strUserDomain 的变量。名称可以随
意选择;您可以将变量称为 A 和 B 或 X 和 Y 或任何其他您想要的名称。
不过,变量的顺序不能随意设置:返回的第一个值总是用户名,第二个值总是域。这意味着,如果您希望
用 X 表示用户名,用 Y 表示域,那么您要确保您的代码像下面这行代码一样:
objProcess.GetOwner X, Y 
调用 GetOwner 之后,我们就可直接回显进程名和所有者。请注意,我们可以稍微来点儿花样儿 – 使用
域\用户格式。这样,我们就可以回显类似于“fabrikam\kenmyer”的名称。
下面附带提供了另一个脚本,该脚本可以列出计算机上的所有进程以及各个进程的所有者:
strComputer = "."Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colProcessList = objWMIService.ExecQuery _ ("Select * from Win32_Process")
For Each objProcess in colProcessList objProcess.GetOwner strUserName, strUserDomain
Wscript.Echo "Process " & objProcess.Name & " is owned by " _ & strUserDomain & "\" &
strUserName & "."Next 
可能有人感到奇怪,2005 年 1 月 3 日正好是 Microsoft 员工的正式休息日。那么今天为什么会有“嗨
,Scripting Guy!”专栏?这只能是由于 Microsoft 脚本专家表现出来的对工作的难以置信的奉献和投
入精神。或者,也可能是由于某个脚本专家 – 还说不出他或她的名字 – 没有意识到今天是假日,所以
照常来了(而且是在早上 7 点啊!)。 
16 可以将脚本的输出复制到剪贴板吗? 
 问:
嗨,Scripting Guy!有办法将脚本输出复制到剪贴板吗?
-- ZW, Marseilles, France
答:
您好,ZW.如果您不介意用一些疯狂的解决方法,那么实际上将脚本输出复制到剪贴板相当容易。首先,
您需要构造一个字符串,其中包含想要的输出。然后,创建 Internet Explorer 的一个实例,然后在其
中打开一个空白页。接着,利用 Internet Explorer 对象模型的内置功能,将字符串复制到剪贴板;特
别是, 可以使用 clipboardData.SetData 方法来实现这个技巧。将某些数据复制到剪贴板的示例脚本如
下:
strCopy = "This text has been copied to the clipboard."
Set objIE = CreateObject("InternetExplorer.Application")
objIE.Navigate("about:blank")
objIE.document.parentwindow.clipboardData.SetData "text", strCopy
objIE.Quit
运行脚本,然后打开 Notepad,然后单击“粘贴”;应该可以看到所复制的字符串。
顺便说一下,所有这一切都是在“幕后”发生的,Internet Explorer 并不会真的出现在屏幕上。这是因
为,在默认情况下,通过脚本创建的任何 IE 实例在运行时都是隐藏的,除非您利用如下语句将其显示出
来:
objIE.Visible = True

关于“vbs脚本有哪些”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

--结束END--

本文标题: vbs脚本有哪些

本文链接: https://lsjlt.com/news/254248.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • vbs脚本有哪些
    这篇文章将为大家详细讲解有关vbs脚本有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 VBS   取得本机IP strComputer = "."&...
    99+
    2023-06-08
  • VBS常用脚本有哪些
    本篇内容介绍了“VBS常用脚本有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!将 域用户或租添加到本地组 Set objGro...
    99+
    2023-06-08
  • VBS中常用脚本有哪些
    这篇文章主要讲解了“VBS中常用脚本有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“VBS中常用脚本有哪些”吧!将域用户或租添加到本地组 Set objGroup =...
    99+
    2023-06-08
  • 有哪些经典的vbs脚本
    这篇文章主要讲解了“有哪些经典的vbs脚本”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“有哪些经典的vbs脚本”吧!文件下载(无回显)  echo iLocal ...
    99+
    2023-06-08
  • 有哪些有用的Shell脚本
    这篇文章主要讲解了“有哪些有用的Shell脚本”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“有哪些有用的Shell脚本”吧!【例子:001】判断输入为数字,字符或其他代码如下:#!/bin/...
    99+
    2023-06-09
  • Python有哪些实用脚本
    这篇文章主要讲解了“Python有哪些实用脚本”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python有哪些实用脚本”吧!1.解决 linux 下 unzip 乱码的问题。import&n...
    99+
    2023-06-16
  • Linux监控脚本有哪些
    小编给大家分享一下Linux监控脚本有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!查看主机网卡流量代码如下:#!/bin/bash#network#Mike...
    99+
    2023-06-09
  • 有哪些csh脚本语法
    这篇文章主要介绍“有哪些csh脚本语法”,在日常操作中,相信很多人在有哪些csh脚本语法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”有哪些csh脚本语法”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!cs...
    99+
    2023-06-09
  • 有哪些批量替换快捷方式目的路径的VBS脚本
    本篇内容主要讲解“有哪些批量替换快捷方式目的路径的VBS脚本”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“有哪些批量替换快捷方式目的路径的VBS脚本”吧!可以替换指定目录及其子目录下所有的快捷方...
    99+
    2023-06-08
  • oracle的自带脚本有哪些
    本篇内容主要讲解“oracle的自带脚本有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“oracle的自带脚本有哪些”吧!创建一个数据库看起来容易,做起来难...
    99+
    2024-04-02
  • Shell脚本面试题有哪些
    这篇文章主要介绍了Shell脚本面试题有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1) 如何向脚本传递参数 ./script argument例子: 显示文件名称脚本...
    99+
    2023-06-09
  • Linux脚本Shell命令有哪些
    这篇文章将为大家详细讲解有关Linux脚本Shell命令有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1.开头程序必须以下面的行开始(必须方在文件的***行):#!/bin/sh符号#!用来告诉系统...
    99+
    2023-06-17
  • 常用的Sheel脚本有哪些
    这篇文章给大家分享的是有关常用的Sheel脚本有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1、list_sys_status.sh显示系统使用的以下信息:主机名、IP地址、子网掩码、网关、DNS服务器IP...
    99+
    2023-06-27
  • 实用的Python脚本有哪些
    本篇内容介绍了“实用的Python脚本有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!系统提示工具这个工具用到了win10toast库来...
    99+
    2023-06-30
  • 常用的shell脚本有哪些
    这篇文章主要讲解了“常用的shell脚本有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“常用的shell脚本有哪些”吧!1.模拟linnux登录shell代码如下:#/bin/bashe...
    99+
    2023-06-09
  • Python自动化脚本有哪些
    本篇内容主要讲解“Python自动化脚本有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python自动化脚本有哪些”吧!10个杀手级应用的Python自动化脚本01、图像优化器这个伟大的自...
    99+
    2023-07-05
  • MYSQL中实用shell脚本有哪些
    小编给大家分享一下MYSQL中实用shell脚本有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! ...
    99+
    2024-04-02
  • Python的自动化脚本有哪些
    Python的自动化脚本有哪些,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。前言:大家平时有没有注意到你每天可能会执行许多的重复的任务,例如阅读 pdf、播放音...
    99+
    2023-06-22
  • Shell脚本经典用法有哪些
    这篇文章主要为大家展示了“Shell脚本经典用法有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Shell脚本经典用法有哪些”这篇文章吧。一、条件选择、判断1、条件选择if(1)用法格式if...
    99+
    2023-06-15
  • Linux里的脚本语言有哪些
    本篇文章为大家展示了Linux里的脚本语言有哪些,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。到Linux下的脚本语言,网友们可能还不十分清楚,这次就给大家盘点下Linux下的脚本编程语言。Perl...
    99+
    2023-06-17
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作