Win32_Printer 类为每台打印机返回一个名为 Default 的字段(一个布尔值)。这在本地工作并准确返回默认打印机。但是,当使用 WMI 远程连接时,它总是返回 false。
我认为这可能取决于您执行远程 WMI 查询的用户。然而,事实并非如此(我用不同的用户尝试过,但没有改变)。
有没有什么办法解决这一问题?我目前正试图让它在 Windows 7 客户端上工作,我正在从 Windows 2008 R2 连接到它
Win32_Printer 类为每台打印机返回一个名为 Default 的字段(一个布尔值)。这在本地工作并准确返回默认打印机。但是,当使用 WMI 远程连接时,它总是返回 false。
我认为这可能取决于您执行远程 WMI 查询的用户。然而,事实并非如此(我用不同的用户尝试过,但没有改变)。
有没有什么办法解决这一问题?我目前正试图让它在 Windows 7 客户端上工作,我正在从 Windows 2008 R2 连接到它
我可以看到这个线程已经很老了,但我想我会加上我的 2 美分,即使它没有帮助,但同样的问题也存在于 XP 中。事实上,在 XP 下你也无法读取 Win32_CDROMDrive 的东西,尽管它在 Windows 7 下是固定的。
您是否找到了 WMI 的默认打印机问题的答案?作为替代方案,您可以从注册表中读取默认打印机,但不能读取端口,如下所示:hkcu\software\microsoft\windows NT\CurrentVersion\Windows\Device
它会显示诸如 HP Color LaserJet CP3525 PCL6、winspool、Ne03 之类的东西:修剪废话,你就得到了你需要的东西。现在您已经有了打印机,您可以通过 WMI 获得匹配的端口。
问候,
4眼