PHP:Impresiones directas en red-Servidor Linux

Iniciado por xPapaChox, 14 Abril 2016, 18:28 PM

0 Miembros y 1 Visitante están viendo este tema.

xPapaChox

Hola a todos.

Espero que me orienten sobre un tema que lo estoy dando mucha vuelta.


ESCENARIO:
=======
En primer lugar, tengo un servidor web en linux-centos.
En segundo lugar, tengo una PC1 en windows que tiene instalada una impresora, y esta compartida. Usa ip local: 192.168.0.77
En tercer lugar, tengo una PC2 en windows que desea imprimir directamente usando el sistema web.

Nombre de impresora compartida: EPSONLX

*Antes de hacer las pruebas en PC1, hice las siguientes configuraciones:
Ejecute el siguiente código, y sale todo bien.

NET USE LPT1: \\%COMPUTERNAME%\EPSONLX /persistent:yes

*En pc2 si puedo ver la impresora compartida e imprimo desde cualquier parte. Pero no imprime ejecutando desde el PHP.


CÓDIGO ABAJO.
-----------------------------------------------------------------------------------------
Código (php) [Seleccionar]
if(($handle = @fopen("\\\\192.168.0.77\\EPSONLX", "w")) === FALSE){
die('No se puedo Imprimir, Verifique su conexion con el Terminal');
}


$datos = "CONTENIDO NIDO";

fwrite($handle,chr(27). chr(64));//reinicio

//fwrite($handle, chr(27). chr(112). chr(48));//ABRIR EL CAJON
fwrite($handle, chr(27). chr(100). chr(0));//salto de linea VACIO
fwrite($handle, chr(27). chr(33). chr(8));//negrita
fwrite($handle, chr(27). chr(97). chr(1));//centrado
fwrite($handle,"=================================");
fwrite($handle, chr(27). chr(100). chr(1));//salto de linea
fwrite($handle, chr(27). chr(32). chr(3));//ESTACIO ENTRE LETRAS
fwrite($handle," ORDEN No 1005 ");
fwrite($handle, chr(27). chr(32). chr(0));//ESTACIO ENTRE LETRAS
fwrite($handle, chr(27). chr(100). chr(0));//salto de linea VACIO
fwrite($handle, chr(27). chr(33). chr(8));//negrita
fwrite($handle, chr(27). chr(100). chr(0));//salto de linea VACIO
fwrite($handle, chr(27). chr(100). chr(1));//salto de linea
fwrite($handle,"RESTAURANT LEGENDS SPORTS");
fwrite($handle, chr(27). chr(100). chr(1));//salto de linea
fwrite($handle,"=================================");
fwrite($handle, chr(27). chr(100). chr(3));//salto de linea
fwrite($handle,"PALABRA A IMPRIMIT: ".$dato);
fwrite($handle, chr(27). chr(100). chr(6));//salto de linea
fwrite($handle, chr(29). chr(86). chr(1));//corta hoja automaticamente


fclose($handle); // cierra el fichero PRN
$salida = shell_exec('lpr LPT1'); //lpr->puerto impresora, imprimir archivo PRN

-----------------------------------------------------------------------------------------

Aún cuando ejecuto el código desde la PC1, que es la que comparto la impresora tampoco me manda a imprimir.

Esta es la parte que esta fallando...
Código (php) [Seleccionar]
if(($handle = @fopen("\\192.168.0.77\\EPSONLX", "w")) === FALSE)[/php]

[b]Mod: Obligatorio el uso de etiquetas GeSHi. Temas sobre PHP van al subforo de PHP.[/b]