You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用VBScript获取计算机所有已安装打印机并在同一行输出

问题根因

现有代码的循环逻辑会每次直接覆盖Printers的返回值,因此最终只会保留最后一个遍历到的打印机名称。

调整方案

你需要将所有遍历到的打印机名称拼接为同一个字符串后再返回,以下是修改后的可直接运行代码,默认用, 作为分隔符,你可以按需替换成分号、竖线等其他分隔符:

Function Printers
    Dim strResult
    strResult = ""
    strComputer = "."
    Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
    Set colItems = objWMIService.ExecQuery("Select * from Win32_Printer",,48) 
    For each objItem in colItems
        ' 非首个打印机名称前加分隔符,避免末尾多出多余符号
        If strResult <> "" Then 
            strResult = strResult & ", "
        End If
        strResult = strResult & objItem.Name
    Next
    Printers = strResult
End Function
WScript.Echo "Printers: " &  Printers

运行后就会输出所有打印机名称在同一行,和你期望的效果一致。

内容的提问来源于stack exchange,提问作者Feras Shorafa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 10:48:04