¿Necesito obtener la lista de todas las impresoras que se conectan a la computadora?
¿Cómo puedo hacerlo en C #, WinForms?
Prueba esto:
foreach (string printer in System.Drawing.Printing.PrinterSettings.InstalledPrinters)
{
MessageBox.Show(printer);
}
Si necesita más información que solo el nombre de la impresora, puede usar la
System.Management
API para consultarlos:fuente
Observe la propiedad estática System.Drawing.Printing.PrinterSettings.InstalledPrinters .
Es una lista de los nombres de todas las impresoras instaladas en el sistema.
fuente
Obtener lista de impresoras locales y de red en ASP.NET
Este método utiliza el Instrumental de administración de Windows o la interfaz WMI. Es una tecnología que se utiliza para obtener información sobre varios sistemas (hardware) que se ejecutan en un sistema operativo Windows.
Haga clic aquí para descargar la fuente y la demostración de la aplicación
Demostración de la aplicación que enumera la red y la impresora local
fuente
También puede utilizar la clase LocalPrintServer. Ver: System.Printing.LocalPrintServer
Como se indica en los documentos: Las clases dentro del espacio de nombres System.Printing no son compatibles para su uso dentro de un servicio de Windows o una aplicación o servicio ASP.NET.
fuente
Si está trabajando con MVC C #, esta es la forma de tratar las impresoras y los puertos serie para los menús desplegables.
fuente