From EDM2
Jump to: navigation, search

This call queries the active code page and font for the specified printer and system file number.


DosPFSQueryAct (PrinterName, CodePage, FontID, SFN, Reserved)


PrinterName (PSZ) - input 
Address of the name of the printer that queries the active code page and font.
CodePage (PUSHORT) - output 
Address of the active code page that returns the specified printer and System File Number.
FontID (PUSHORT) - output 
Address of the active Font ID number that returns the specified printer and System File Number.
SFN (USHORT) - input 
System File Number of the requester. The SFN is passed as a parameter in the monitor packet.
Reserved (ULONG) - input 
Reserved must be set to zero.

Return Code

rc (USHORT) - return
Return values are:
  • 9 Code page switcher internal error.
  • 10 Invalid printer name as input.
  • 13 Received code page request when code page switcher not initialized.
  • 16 Received request for system file number not in the system file number table.


DosPFSQueryAct is intended for use only by applications that replace the spooler as a print monitor and that do code page switching. Other applications should use printer IOCTLs to manipulate printer code page switching.

DosPFSQueryAct is located in SPOOLCP.DLL (not in DOSCALLS.LIB) and requires an import statement in the module definition file. Refer to the IBM Operating System/2 Version 1.2 Building Programs, Module Definition File Statements section for information regarding the import statement.




USHORT  rc = DosPFSQueryAct(PrinterName, CodePage, FontID, SFN, Reserved);

PSZ      PrinterName;   /* Printer name string */
PUSHORT  CodePage;      /* Code Page return */
PUSHORT  FontID;        /* Font ID return */
USHORT   SFN;           /* System File Number */
ULONG    0;             /* Reserved, set to zero */

USHORT   rc;            /* return code */



PUSH@  ASCIIZ  PrinterName   ;Printer name string
PUSH@  WORD    CodePage      ;Code Page return
PUSH@  WORD    FontID        ;Font ID return
PUSH   WORD    SFN           ;System File Number
PUSH   DWORD   0             ;Reserved (must be zero)
CALL   DosPFSQueryAct

Returns WORD