Para evitar que un archivo RTF sea abierto por varias terminales a la vez en modo modificar y evitar de este modo que se pierdan datos si dos terminales están accediendo y modificando a la vez, lo que se me ocurrió fue cambiarle los atributos con la funcion fAttrib().
Lo que hago es ponerlo en modo 01 (read only) si no estaba en ese modo. De esta forma, si otra terminal quiere abrirlo, antes lee los atributos y si está en modo read only, solo lo hará en modo NO MODIFY.
Todo funcionaba bién hasta que intenté hacer la impresión. Cuando llamo a PRINT de la clase TPrinter, imprime normal cualquier cadena que le mande por la impresora laser y el programa sigue funcionando normal.
Si quiero imprimir a un archivo PDF, al salir del print, no permite que le cambie los atributos al RTF cuando este es liberado al cerrar el rich que lo había "bloqueado" poniendolo en "readonly", cosa que no pasa cuando imprimo a una impresora física.
Ojo que si no se hace impresión a PDF, el sistema funciona bién. ¿que podrá estar ocurriendo?.
Gracias.
Rolando
RTF y PDF - Consulta
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
Gracias Antonio por responder,
La cuestión es que hice loa prueba de enviarle una cadena de caracteres cualquiera a imprimir, algo que no tiene que ver con el fichero que está usando el Rich, pero hace lo mismo.
Es algo que solo se produce cuando mando a imprimir con salida a PDF.
Cuando cierro el dialogo contenedor, en ese momento cambio los atributos del RTF abierto. Como hago habitualmente cuando algo no funciona, puse un MsgInfo para poder "ver" donde falla y, luego de cambiar los atributos, los leo y muestro en el MsgInfo y me indica como que los hubiese cambiado pero al ver con el explorador de windows, NO _. ¿Que raro no?.
Rolando
La cuestión es que hice loa prueba de enviarle una cadena de caracteres cualquiera a imprimir, algo que no tiene que ver con el fichero que está usando el Rich, pero hace lo mismo.
Es algo que solo se produce cuando mando a imprimir con salida a PDF.
Cuando cierro el dialogo contenedor, en ese momento cambio los atributos del RTF abierto. Como hago habitualmente cuando algo no funciona, puse un MsgInfo para poder "ver" donde falla y, luego de cambiar los atributos, los leo y muestro en el MsgInfo y me indica como que los hubiese cambiado pero al ver con el explorador de windows, NO _. ¿Que raro no?.
Rolando
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact: