您好,登錄后才能下訂單哦!
這篇文章主要講解了“VBS怎么實現查詢服務的制造商”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“VBS怎么實現查詢服務的制造商”吧!
一個網友提問:
select * from win32_service 這個能查服務名稱、狀態……
但我想查這個服務的制造商,如微軟、農業銀行,還是未知的??這個屬性是什么,謝謝……
我發現msconfig中可以看見的,但無法提取
下面給出解答,一種間接方法:
根據服務名獲取到關聯的主程序,再從主程序獲取制造商
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
感謝各位的閱讀,以上就是“VBS怎么實現查詢服務的制造商”的內容了,經過本文的學習后,相信大家對VBS怎么實現查詢服務的制造商這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。