Utilizamos cookies propias y de terceros para mejorar la experiencia de navegación, y ofrecer contenidos y publicidad de interés.
Al continuar con la navegación entendemos que se acepta nuestra política de cookies.
Iniciar sesión Cerrar
Correo:
Contraseña:
Entrar
Recordar sesión en este navegador
Iniciar sesiónIniciar sesiónCrear cuentaCrear cuenta

Visual Basic.NET - Cual es el puerto de mi impresora

  Imprimir  
Vista:
Me gusta: Está pregunta es útil y esta clara
0
No me gusta: Está pregunta no esta clara o no es útil
 
Asunto:

Cual es el puerto de mi impresora

Autor:Joaquin (28 intervenciones)
Fecha:05/07/2006 10:09:21
Hola a todos
Alguien sabe como obtener el puerto al que esta conectada una impresora determinada.
Al seleccionar una impresora de mi equipo, quiero que me indique en que puerto se encuentra conectada.
Gracias y a ver si alguien responde, que he puesto unas cuantas dudas y nadie ha respondido.
Responder
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:

RE:Cual es el puerto de mi impresora

Autor:Javi RM (12 intervenciones)
Fecha:05/07/2006 12:54:30
Buenas, para recuperar el puerto de cualquier impresora debes acceder al registro de Windows. Para hacerlo prueba con el siguiente código:

' Importación de libreria
Imports Microsoft.Win32

' En el Load de un form pon lo siguiente:
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Try
Dim Impresora As String = "lexmark z55"
Dim Key As RegistryKey
Dim KeyPrinter As RegistryKey
Dim Keys() As String
Dim Valores() As String
Dim Puerto As String
Dim i As Long
Dim x As Long

' Me posiciono en la clave del registro de Windows donde se almacenan las impresoras configuradas
Key = Microsoft.Win32.Registry.LocalMachine
Key = Key.OpenSubKey("SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Printers", False)

' Recupero las subclaves de la clave principal
Keys = Key.GetSubKeyNames()

For i = 0 To UBound(Keys)
' Compruebo el nombre de la clave por si coincide con la impresora
If UCase(Keys(i).ToString) = UCase(Impresora) Then
' Leo los valores de la clave de la impresora
KeyPrinter = Microsoft.Win32.Registry.LocalMachine
KeyPrinter = KeyPrinter.OpenSubKey("SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Printers\" & Keys(i).ToString, False)
Puerto = KeyPrinter.GetValue("port", "")
If Puerto = "" Then
MsgBox("No se ha encontrado la clave PORT de la impresora seleccionada", MsgBoxStyle.Critical)
Else
MsgBox("El puerto de la impresora " & Impresora & " es " & Puerto, MsgBoxStyle.Information)
End If
i = UBound(Keys)
End If
Next i

Catch ex As Exception

End Try
End Sub

Para buscar el puerot de la impresora que necesites, solo debes cambiar el valor a [impresora].

Un saludo y espero que te sirva. ; )
Comentar
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:

RE:Cual es el puerto de mi impresora

Autor:Joaquin (28 intervenciones)
Fecha:06/07/2006 12:09:09
Hola
Gracias por el codigo, funciona a la perfección excepto en el caso de que la impresora en la que quiero imprimir esté en red.
Buscando en el registro lo que encuentro sobre las impresoras es que estan en el puerto NExx, y lo que me falta es el Numero del NE.
Saben como obtenerlo?
Gracias
Joaquin
Comentar
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:

RE:Cual es el puerto de mi impresora

Autor:joaquin (28 intervenciones)
Fecha:06/07/2006 14:22:24
Gracias por todo ya lo he solucionado
Comentar