zoukankan      html  css  js  c++  java
  • PowerShell 惠普打印机双面驱动自动设置已安装

    win10系统,使用实验室的HP P2055dn打印机。每次关机重连后,都会把默认的双面打印机的设置改回“未安装”,需要手动改成“已安装”。感觉是个bug,win7的时候关机后状态还会保持。

     每次连上都要改一次,心累。。。

    尝试用PowerShell把这个操作脚本化,实测还是比较容易实现的。PowerShell ISE的交互式开发模式良好地继承了Visual Studio的提示风格,几乎不看文档,简单的Tab几次,看属性名大概就能猜出涵义。和之前写C#的感觉挺相似的(傻瓜式编程)

    代码比较简单,第一行列出打印机原属性,第二行设置双面打印(长边翻转),第三行设置双面打印驱动属性为已安装,第四行重新打印更改后的打印机属性。最后借助了一个暂停方法让程序可由等待用户输入后再退出。

    https://stackoverflow.com/questions/20886243/press-any-key-to-continue

     1 Get-PrinterProperty -PrinterName 'HP LaserJet P205X series PCL6 Class Driver'
     2 Set-PrintConfiguration -PrinterName 'HP LaserJet P205X series PCL6 Class Driver'  -DuplexingMode TwoSidedLongEdge
     3 Set-PrinterProperty -PrinterName 'HP LaserJet P205X series PCL6 Class Driver' -PropertyName Config:DuplexUnit Installed
     4 Get-PrinterProperty -PrinterName 'HP LaserJet P205X series PCL6 Class Driver'
     5 
     6 
     7 pause "Press any key to continue"
     8 
     9 Function pause ($message)
    10 {
    11     # Check if running Powershell ISE
    12     if ($psISE)
    13     {
    14         Add-Type -AssemblyName System.Windows.Forms
    15         [System.Windows.Forms.MessageBox]::Show("$message")
    16     }
    17     else
    18     {
    19         Write-Host "$message" -ForegroundColor Yellow
    20         $x = $host.ui.RawUI.ReadKey("NoEcho,IncludeKeyDown")
    21     }
    22 }

    脚本在PowerShell ISE下调试很方便,写好后可能无法直接运行,可参考以下方式修改设置解决:

    PowerShell因为在此系统中禁止执行脚本解决方法

    如果想自己给脚本签名,可参考以下链接:

    Powershell 脚本数字签名

    需要注意的式,其中的代码可能由于版本原因,在win10上略有区别了。测试的时候发现cert:CurrentUserMy需要改为Cert:CurrentUserMy。

    不过这个很容易发现,且稍微修改一下,或者Tab几下,就鞥你出现适当的提示帮助更正。

  • 相关阅读:
    将vs2010换成vs2012的主题
    写了个油猴脚本
    Myeclipse10下的access数据库配置
    点击按钮触发声音(xaml实现)
    自定义的可拖动窗体
    在博客添加时钟
    定时器写的闪光字
    C语言I博客作业02
    c语言|博客作业02
    关于软件工程的一些疑问
  • 原文地址:https://www.cnblogs.com/followyourheart/p/printer.html
Copyright © 2011-2022 走看看