FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Winspool
Posts: 13
Joined: Mon Feb 26, 2007 10:00 AM
Winspool
Posted: Mon Jul 09, 2007 07:39 AM

Para poder utilizar funciones del API de Windows que hacen referencia a la libería Winspool, ¿que es necesario que incluya en la aplicación? ¿Ha de incluirse alguna libreria o DLL "adaptada" a fivewin/xharbour?

Posts: 13
Joined: Mon Feb 26, 2007 10:00 AM
Winspool
Posted: Mon Jul 09, 2007 10:53 AM

Librerias y archivos relacionados:

Winspool.lib
Winspool.dll
Winspool.h

Como aclaración, Winspool es el servicio de windows que controla las impresoras, la cola de impresión, etc.

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Winspool
Posted: Mon Jul 09, 2007 10:58 AM

Haz impdef.exe winspool.def winspool.dll y asi obtendrás el fichero ascii DEF que contiene los nombres de las funciones que exporta esa DLL, luego puedes buscar documentación acerca de ellas sabiendo sus nombres

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 13
Joined: Mon Feb 26, 2007 10:00 AM
Winspool
Posted: Mon Jul 09, 2007 11:48 AM
Gracias Antonio.

Creo que antes no me explique bien. La documentación en sí, dispongo de ella, y para poder tener acceso a las funciones de la misma (muy utiles por cierto, pues permiten obtener el numero de impresoras conectadas al equipo, los drivers que utilizan, información sobre la cola de impresión,etcétera)
declaro las funciones de ésta manera.

 DLL32 FUNCTION EnumPrintA; 
      ( flags AS LONG, ;
        name AS STRING, ;
        Level AS LONG, ;
        @pPrinterEnum AS BYTE, ;
        cdBuf AS LONG, ;
        @pcbNeeded AS LONG, ;
        @pcReturned AS LONG ) ;
   AS LONG PASCAL;
   FROM "EnumPrintersA" LIB "WINSPOOL"


Esta función del API de Win que aquí muestro, te enumera la lista de impresoras de las que dispone el equipo. Otras funciones del API que también utilizo, no me dan ningún tipo de problema. El problema es que con ésta en particular, parece ser que no es capaz de cargar la libreria WINSPOOL, entonces aquí surje mi duda. Ya no se si ésto está dentro del ámbito de FiveWin, o se sale de lo que a éste foro concierne. Si es así, disculpas.

Me explique mal al formular la pregunta del post. Mas bién debería haber preguntado cual es el procedimiento para cargar una librería, y poder hacer uso de sus funciones en FiveWin. A continuacíon, muestro la ruta de las librerias y del archivo de extensión .h, los cuales desearía utilizar.

Al compilar el programa me muestra éste error en tiempo de ejecución:
"Error code: 0 Loading Winspool". Dicho error, parece ser que se produce cuando se intenta cargar una librería, y esta, no existe (hace referencia a la última línea de código de este post). De hecho, si se cambia el nombre de librería por una no existente, muestra el mismo error.

P.D. En el Borland BCC5, estos archivos están en la ruta:
Borland\BCC55\include\winspool.h
Borland\BCC55\LIB\PSDK\winspool.lib

Saludos y gracias!
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Winspool
Posted: Mon Jul 09, 2007 01:17 PM

Cambia winspool.dll por winspool.exe

regards, saludos

Antonio Linares
www.fivetechsoft.com

Continue the discussion