【问题标题】:Setting printer Share name programmatically以编程方式设置打印机共享名称
【发布时间】:2015-09-18 23:40:45
【问题描述】:

我已经能够使用 System.Management 程序集中的 ManagementObject 成功重命名打印机。

string query = String.Format("SELECT * FROM Win32_Printer WHERE Name = '{0}'", printerName);
ManagementObjectSearcher searcher = new ManagementObjectSearcher(query);
ManagementObjectCollection collection = searcher.Get();
ManagementObject printer = collection.Cast<ManagementObject>().ElementAt(0);
printer.InvokeMethod("RenamePrinter", new object[] { newName });

有没有类似设置打印机共享名的东西?

这是我要更改的属性的屏幕截图:

【问题讨论】:

    标签: c# printing wmi


    【解决方案1】:

    原来我可以直接更改 ManagementObject 的属性。我就是这样做的:

    string query = String.Format("SELECT * FROM Win32_Printer WHERE Name = '{0}'", printerName);
    ManagementObjectSearcher searcher = new ManagementObjectSearcher(query);
    ManagementObjectCollection collection = searcher.Get();
    ManagementObject printer = collection.Cast<ManagementObject>().ElementAt(0);
    
    // The part that changes the printer share name
    printer.Properties["ShareName"].Value = newName;
    printer.Put();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-06-15
      • 1970-01-01
      • 2010-09-14
      • 1970-01-01
      • 1970-01-01
      • 2014-10-05
      • 1970-01-01
      相关资源
      最近更新 更多