以编程方式设置打印机共享名称
Setting printer Share name programmatically
我已经能够使用 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 });
有没有类似设置打印机共享名的东西?
这是我正在尝试更改的 属性 的屏幕截图:
原来我可以直接更改管理对象的属性。我是这样做的:
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();
我已经能够使用 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 });
有没有类似设置打印机共享名的东西?
这是我正在尝试更改的 属性 的屏幕截图:
原来我可以直接更改管理对象的属性。我是这样做的:
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();