I want to get my printer's port number in c#
I have tried using Win32_Printer and PrinterSettings
//Required namespaces
using System.Management;
using System.Drawing.Printing;
using System.Runtime.InteropServices;
using System.ComponentModel;
using System.Printing;
using System.IO.Ports;
using System.Net;
String printerName = "My printer name";
//String query = String.Format("Select Name, PortName from Win32_Printer WHERE Name LIKE '%{0}'", printerName);
String query = String.Format("Select * from Win32_Printer WHERE Name LIKE '%{0}'", printerName);
ManagementObjectSearcher printers = new ManagementObjectSearcher(query);
foreach (ManagementObject printer in printers.Get())
{
DeviceName = (string)printer.GetPropertyValue("Name");
//Console.WriteLine(DeviceName);
PortName = (string)printer.GetPropertyValue("PortName");
//Console.WriteLine(PortName);
}
PrinterSettings ps = new PrinterSettings();
ps.PrinterName = printerName;