设置打印机

  /// <summary>
  /// 指定したプリンタ名を通常使いプリンタに設定します
  /// </summary>
  /// <param name="pPrinterName"></param>
  private void SetDefaultPrinterName(string pPrinterName)
  {
   if(pPrinterName.Equals(""))
   {
    return;
   }

   string vPrinterName = pPrinterName;

   ManagementObjectSearcher vQuery;
   ManagementObjectCollection vQueryCollection;

   string vClassname = "SELECT * FROM Win32_Printer";

   vQuery = new ManagementObjectSearcher(vClassname);

   //全部存在のプリンタを検索出す
   vQueryCollection = vQuery.Get();

   bool vFlag = false;

   foreach (ManagementObject vMO in vQueryCollection)
   {
    //プリンタ名対応のプリンタが存在したら、通常使いプリンタに設定します。
    if (string.Compare(vMO["Name"].ToString(), vPrinterName,true)==0)
    {
     vMO.InvokeMethod("SetDefaultPrinter",null);

     vFlag = true;

     break;
    }
   }

   if(vFlag == false)
   {
    throw new Exception("指定のプリンタは存在しないです。");
   }
  }

原文地址:https://www.cnblogs.com/si812cn/p/844476.html