本文目录导读:

Windows系统(PowerShell / CMD / VBScript)
方法1:PowerShell(推荐)
# 使用WScript.Network COM对象 $printerName = "HP LaserJet Pro" $network = New-Object -ComObject WScript.Network $network.SetDefaultPrinter($printerName) # 或者使用Win32_Printer(需要管理员权限) $printer = Get-WmiObject -Query "SELECT * FROM Win32_Printer WHERE Name='$printerName'" $printer.SetDefaultPrinter()
方法2:CMD批处理
@echo off
:: 使用RUNDLL32调用打印控制面板(不推荐,较难控制)
:: 更好的方法是使用PowerShell调用
powershell -Command "(New-Object -ComObject WScript.Network).SetDefaultPrinter('HP LaserJet Pro')"
方法3:VBScript
Set objNetwork = CreateObject("WScript.Network")
objNetwork.SetDefaultPrinter "HP LaserJet Pro"
macOS系统(Bash / AppleScript)
方法1:使用lpoptions命令
# 查看可用打印机 lpstat -p -d # 设置默认打印机 lpoptions -d "打印机名称" # 示例 lpoptions -d "Brother_HL-2270DW"
方法2:使用cupsctl(推荐,避免转义问题)
# 获取打印机URI lpinfo -v # 直接设置默认打印机 cupsctl DefaultPrinter="打印机名称" systemctl restart cups # 某些系统需要重启CUPS服务
方法3:AppleScript
tell application "System Events"
set defaultPrinter to "HP LaserJet Pro"
do shell script "lpoptions -d " & quoted form of defaultPrinter
end tell
跨平台脚本(Python)
import subprocess
import sys
import os
def set_default_printer_windows(printer_name):
"""Windows: 通过PowerShell设置"""
ps_script = f"""
$printer = Get-WmiObject -Query "SELECT * FROM Win32_Printer WHERE Name='{printer_name}'"
$printer.SetDefaultPrinter()
"""
subprocess.run(["powershell", "-Command", ps_script], check=True)
def set_default_printer_mac(printer_name):
"""macOS: 通过lpoptions设置"""
subprocess.run(["lpoptions", "-d", printer_name], check=True)
# 使用示例
if sys.platform == "win32":
set_default_printer_windows("HP LaserJet Pro")
elif sys.platform == "darwin": # macOS
set_default_printer_mac("Brother_HL-2270DW")
else:
print("不支持的操作系统")
注意事项
Windows权限问题
- 管理员权限:某些方法(如Win32_Printer)需要以管理员身份运行
- 网络打印机:需确认打印机已连接且共享名正确
macOS特有问题
- 打印机名称:必须使用
lpstat -p显示的准确名称(可能含空格) - CUPS服务:更改后可能需要重启
cups服务
常见错误排查
- 打印机名称错误:先运行
lpstat -p或Get-Printer列出所有打印机 - 权限不足:Windows以管理员身份运行;macOS使用
sudo - 打印机未连接:确认打印机在线且驱动已正确安装
进阶:自动检测并设置
# PowerShell自动选择第一个可用打印机
$printer = Get-Printer | Where-Object {$_.Type -eq "Local"} | Select-Object -First 1
if ($printer) {
$printer.SetDefaultPrinter()
Write-Host "已设置默认打印机: $($printer.Name)"
}
版权声明:NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
篮球直播
篮球直播
篮球直播
篮球直播
篮球直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
篮球直播
篮球直播
篮球直播
篮球直播
篮球直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播