Advertisement
princeofisles

Untitled

Jan 6th, 2015
224
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.31 KB | None | 0 0
  1. using (ManagementClass win32Printer = new ManagementClass("Win32_Printer"))
  2. {
  3. using (ManagementBaseObject inputParam =
  4. win32Printer.GetMethodParameters("AddPrinterConnection"))
  5. {
  6. // Replace <server_name> and <printer_name> with the actual server and
  7. // printer names.
  8. inputParam.SetPropertyValue("Name", "\\\\<server_name>\\<printer_name>");
  9.  
  10. using (ManagementBaseObject result =
  11. (ManagementBaseObject)win32Printer.InvokeMethod("AddPrinterConnection", inputParam, null))
  12. {
  13. uint errorCode = (uint)result.Properties["returnValue"].Value;
  14.  
  15. switch (errorCode)
  16. {
  17. case 0:
  18. Console.Out.WriteLine("Successfully connected printer.");
  19. break;
  20. case 5:
  21. Console.Out.WriteLine("Access Denied.");
  22. break;
  23. case 123:
  24. Console.Out.WriteLine("The filename, directory name, or volume label syntax is incorrect.");
  25. break;
  26. case 1801:
  27. Console.Out.WriteLine("Invalid Printer Name.");
  28. break;
  29. case 1930:
  30. Console.Out.WriteLine("Incompatible Printer Driver.");
  31. break;
  32. case 3019:
  33. Console.Out.WriteLine("The specified printer driver was not found on the system and needs to be downloaded.");
  34. break;
  35. }
  36. }
  37. }
  38. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement