Herramientas de usuario

Herramientas del sitio


pos

¡Esta es una revisión vieja del documento!


script para cambiar el nombre de una impresora que ya existe:

# — CONFIGURACIÓN — $nombreFijo = “fax-immutable” $rutaLog = “C:\remoto\log_fax.txt”

# 1. Espera breve Start-Sleep -Seconds 2

# DIAGNÓSTICO: Muestra en pantalla qué impresoras redirigidas ve el sistema Write-Host “— IMPRESORAS REDIRIGIDAS DETECTADAS —” -ForegroundColor Cyan Get-Printer | Where-Object { $_.Name -like “*redir*” } | Select-Object Name, PortName | Format-Table -AutoSize Write-Host “—————————————–” -ForegroundColor Cyan

# 2. BÚSQUEDA: “fax” Y “redir” (Sin distinción de mayúsculas/minúsculas) $impresoraOrigen = Get-Printer | Where-Object { $_.Name -like “*fax*” -and $_.Name -like “*redir*” } | Select-Object -First 1

if ($impresoraOrigen) {

  $nombreReal = $impresoraOrigen.Name
  $puertoDinamic = $impresoraOrigen.PortName
  
  # Escribe en el log sin tildes para evitar errores
  "$(Get-Date): ENCONTRADO -> $nombreReal (Puerto: $puertoDinamic)" | Out-File $rutaLog -Append
  try {
      # 3. EL CAMBIAZO (Set-Printer)
      $miFija = Get-Printer -Name $nombreFijo -ErrorAction Stop
      
      if ($miFija.PortName -ne $puertoDinamic) {
          Set-Printer -Name $nombreFijo -PortName $puertoDinamic
          "$(Get-Date): EXITO - Puerto actualizado a $puertoDinamic" | Out-File $rutaLog -Append
          Write-Host "CAMBIO REALIZADO CORRECTAMENTE" -ForegroundColor Green
      } else {
          "$(Get-Date): OK - El puerto ya era correcto." | Out-File $rutaLog -Append
          Write-Host "OK: Ya estaba configurada." -ForegroundColor Green
      }
      
  } catch {
      $err = $_.Exception.Message
      "$(Get-Date): ERROR CRITICO: $err" | Out-File $rutaLog -Append
      Write-Host "FALLO: $err" -ForegroundColor Red
  }

} else {

  "$(Get-Date): ERROR - No se encontro impresora con 'fax' + 'redir'" | Out-File $rutaLog -Append
  Write-Host "NO SE ENCONTRO NINGUNA IMPRESORA QUE COINCIDA" -ForegroundColor Yellow
  Write-Host "Revisa la lista azul de arriba para ver los nombres reales." -ForegroundColor Yellow

}

la prueba se hizo con un fax. ojo.

y este es para abrir el cajon:

# Busca cualquier impresora que contenga “TM-m30” en el nombre $printer = Get-Printer | Where-Object { $_.Name -like “*TM-m30*” } | Select-Object -First 1

if ($printer) {

  # Comando ESC/POS binario puro para Epson
  $command = [char]27 + [char]112 + [char]0 + [char]25 + [char]250
  $command | Out-Printer -Name $printer.Name

}

pos.1770234825.txt.gz · Última modificación: por pincho