error accesing printer spooler

13/01/2004 - 17:50 por Templario | Informe spam
mi problema que espero que es mail si se postee como es debido es:

Tengo una impresora laser (hp 2300) instalada en una maquina que tiene
win98, y un programa punto de venta (vfp 5) manda a imprimir la factura a
esa impresora, el problema es que al momento de imprimir me marca el error y
me manda a imprimir a la impresora que tiene predeterminada, cual sera el
problema? gracias

ya probe con reintalar la maquina tanto donde esta fisicamente como en la
que tengo la aplicacion y e probado todas las combinaciones de SET Printer

De hecho la ultima vez trate con set printer to name getprinter()
saludos
 

Leer las respuestas

#1 NeoLeoX
23/01/2004 - 12:05 | Informe spam
el Problema es que el FRX guarda los datos de la impresora Default al
salvarlo y si esa impresora no esta presente al Run Time... pues te va a
dar ese error...

hay un monton de articulos que dicen como solucionar ese problema...
te ofrecería que bajaras de mi pagina una utileria que soluciona ese
problema pero esta compilada en VFP6
tendrias que bajar las DLLs... (por cierto tambien disponibles ahi mismo)

Parte del codigo que necesitas para limpiar esas dependencias


*!* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
*!* this should clean any printer dependency from a FRX File
*!* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
LOCAL ARRAY laForms[1], laLinesToWipe[1], laSettings[1]

** - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
* Pick a Repo File
** - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
use in select('miRepo')
on error return .F.
use (getfile('FRX')) alias "miRepo" in 0

sele 'miRepo'
LOCATE
on error

** - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
* Clear the tag fields:
** - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
REPLACE TAG WITH "", tag2 WITH ""


DIMENSION laLinesToWipe[3]
laLinesToWipe[1] = "DRIVER="
laLinesToWipe[2] = "DEVICE="
laLinesToWipe[3] = "OUTPUT="

** - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
* Remove the printer info from the expr field:
** - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
lnNumSettings = ALINES(laSettings,EXPR,.T.)
lnLoop = 1
DO WHILE lnLoop <= lnNumSettings
lnInc = 1
FOR EACH lcTargSetting IN laLinesToWipe
IF lcTargSetting $ laSettings[lnLoop]
llNeedToComile = .T.
ADEL(laSettings,lnLoop)
lnNumSettings = lnNumSettings - 1
lnInc = 0
ENDIF
ENDFOR
lnLoop = lnLoop + lnInc
ENDDO

lcNewExpr = ""
FOR lnLoop = 1 TO lnNumSettings
lcNewExpr = lcNewExpr+ALLTRIM(laSettings[lnLoop])+CHR(13)+CHR(10)
ENDFOR
REPLACE EXPR WITH lcNewExpr

lcFile= dbf('miRepo')
use in select('miRepo')

COMPILE REPORT (lcFile)

** - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
*!* EOP:
** - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -


no estan inicializadas las variables y una que otra cosilla por ahi ...
pero debe funcionar

espero te sirva...

LO
El Paso Tx.






"Templario" wrote in message
news:
mi problema que espero que es mail si se postee como es debido es:

Tengo una impresora laser (hp 2300) instalada en una maquina que tiene
win98, y un programa punto de venta (vfp 5) manda a imprimir la factura a
esa impresora, el problema es que al momento de imprimir me marca el error


y
me manda a imprimir a la impresora que tiene predeterminada, cual sera el
problema? gracias

ya probe con reintalar la maquina tanto donde esta fisicamente como en la
que tengo la aplicacion y e probado todas las combinaciones de SET Printer

De hecho la ultima vez trate con set printer to name getprinter()
saludos


Preguntas similares