- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
使用如下所示的 Wscript.Network 对象,是否有一种简单的方法来检索计算机上的默认打印机?我知道如何设置默认打印机,但我希望获取当前的默认打印机名称。我混合使用 Windows 2000、XP 和 7 客户端,因此不想使用 WMI。
Set objNetwork = CreateObject("WScript.Network")
Set objLocalPrinters = objNetwork.EnumPrinterConnections
最佳答案
WshNetwork.EnumPrinterConnections
集合不提供有关默认打印机的任何信息。您可以尝试从注册表中检索默认打印机名称,但我不确定它是否可靠:
Set oShell = CreateObject("WScript.Shell")
strValue = "HKCU\Software\Microsoft\Windows NT\CurrentVersion\Windows\Device"
strPrinter = oShell.RegRead(strValue)
strPrinter = Split(strPrinter, ",")(0)
WScript.Echo strPrinter
至于 WMI,确实某些 WMI 类和类成员在较旧的 Windows 版本上不可用。例如,Win32_Printer.Default
指示打印机是否为默认打印机的属性在 Windows 2000/NT 上不存在。不过,有一个简单的解决方法可以在这些 Windows 版本上查找默认打印机,其中包括检查每个打印机的 Attribute
位掩码中的 PRINTER_ATTRIBUTE_DEFAULT
属性:
Const ATTR_DEFAULT = 4
strComputer = "."
Set oWMI = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colPrinters = oWMI.ExecQuery("SELECT * FROM Win32_Printer")
For Each oPrinter in colPrinters
If oPrinter.Attributes And ATTR_DEFAULT Then
Wscript.Echo oPrinter.ShareName
End If
Next
此代码也适用于更高版本的 Windows 版本。
有关详细信息,请查看这篇嘿,脚本专家!文章:Is There Any Way to Determine the Default Printer On a Computer?
关于vbscript - VBS - 获取默认打印机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2273458/
我使用 IBM Personal Communications 12.0.3.0 的宏记录器制作了一个凭据输入宏。它只是在调用时输入我的用户名和密码。 sub Credentials() Dim
该批处理更改了 vbs 代码,使其无法供 vbs 使用。我该如何解决这个问题? 批号: echo Const HIGH = 128 >> prio.vbs echo strComputer = "."
我有 2 个 vbs 文件。 A.vbs: Class test public a public b End Class B.vbs: Dim objShell Set objShell =
以下是我用来尝试在 IIS 6 中创建虚拟目录的条目: [Run] Filename: {tmp}\cscript.exe mkvirtdir.vbs; Parameters: "-c LocalHo
核心vbs代码 ? 1
对于vbs中ping的实现可以通过两种方式 : 1、调用系统ping命令; 2、使用wmi查询pingstate类处理。 1、调用系统ping命令
在看vb开发,看到二维数组时突发奇想用二维数组作为游戏关卡; 1. 选择操作: 游戏开始时会提示选择注册, 登录, 退出三种选项, 2.注册: 注册成功会将用户账户与密码存入用户数据txt文档中
复制指定文件到指定目录下 核心代码 ? 1
复制代码 代码如下: On Error Resume Next Dim WshShell, QQPath, QQselect set wshshell=createobject("
运行前请确定你的电脑安装了word。 复制代码 代码如下: i=0 set wshshell=createobject("wscript.shell") Set objWo
参考代码一: 复制代码 代码如下: Function DeleteLog( ) Dim objFSO, objFolder, strPath,
挺实用的一段代码,用来深入学习vbs,确实不错咯。 复制代码 代码如下: On Error Resume Next '忽略所有错误 Dim filename '声明变量 Di
话说还是闲来练手,初步实现了自己认为的“多线程”下载。(至于是不是多线程,可以参考12楼链接) 为避免冗余,省了一些错误检查。我觉得没多大实际用途,有兴趣的兄弟一起学习讨论呗。欢迎大家指正: 复制
复制代码 代码如下: set oDOM = WScript.GetObject("http://ipseeker.cn//") flag=0 for i=1 to 10 &n
复制代码 代码如下: on error resume next url = " http://www.bathome.net/logging.php?action=login"
效果图: 代码都封装成函数了,方便调用: 复制代码 代码如下: Key = "www-enun-net" '不要用数字
打开狗狗影视,搜索自己需要的资源,资源类型选:电驴,如下图: 我找到一个 19.75gb 的: 点开它,出现如下图的界面,可以看到正常下载地址已被屏蔽。我们复制地址栏中的网址,备用。
最近相关的备份比较频繁,为了校验文件的完整性,老是要打开某文件HASH校验工具,比较麻烦,于是乎写了这个东东,文件较大时计算有点慢,文件的MD5值保存在剪贴板!效果如图: 使用方法: 1.先
CMD当前路径 复制代码 代码如下: test = createobject("Scripting.FileSystemObject").GetF
For Next 语句的基本结构为: 复制代码 代码如下: For counter = start To end [Step step] [statements] [Exit For] [st
我是一名优秀的程序员,十分优秀!