Content

VBS实现查询服务的制造商(vb如何查询数据库)深度揭秘

文章摘要

本文介绍了通过脚本语言(如Wscript或VBScript)从Windows系统中获取服务信息并保存到文件的方法。具体步骤如下:首先,通过`GetObject`获取系统管理服务对象;然后,调用`ExecQuery`获取系统服务列表;接着,使用`Scripting.FileSystemObject`创建文件对象,并遍历每个服务,提取路径、名称及制造商信息;最后,将提取的信息保存到`info.txt`文件中,并显示提示信息。文章重点突出了解决从系统中批量提取服务信息的技术。

 Set objWMIService=GetObject(“winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2”) Set Services=objWMIService.ExecQuery(“Select * from Win32_Service”) Set fso=CreateObject(“Scripting.FileSystemObject”) Set objShell=CreateObject(“Shell.Application”) Set objFolder=objShell.NameSpace(0) i=0 Do If objFolder.GetDetailsOf(“”, i)=”公司” Then ‘非中文系统自行修改 Exit Do Else i=i+1 End If Loop For Each objService in Services path=GetPath(objService.PathName) IF fso.GetExtensionName(path)=”” Then path=path & “.exe” Set objFolder=objShell.NameSpace(fso.GetParentFolderName(path)) Set objItem=objFolder.ParseName(fso.GetFileName(path)) comp=objFolder.GetDetailsOf(objItem, i) If comp=”” Then comp=”未知” info=info & “服务:”& objService.DisplayName &” 制造商:”& comp & vbCrLF Next fso.CreateTextFile(“info.txt”, true).WriteLine info MsgBox “完成” Function GetPath(strng) Dim re Set re=New RegExp re.Pattern=”^””?(.+\\[^\\\s””]+).*” GetPath=re.Replace(strng,”$1″) Set regEx=Nothing End Function