home *** CD-ROM | disk | FTP | other *** search
-
-
-
- C Interface for PRINT.COM -- Version 1.1, 21 Mar 87 1 C Interface for PRINT.COM -- Version 1.1, 21 Mar 87 1
-
-
-
-
-
-
- These routines implement a low level interface to the DOS
- version 3, PRINT.COM multiplex interrupt (0x2F) functions. As
- such there is a one-to-one correspondence between these routines
- and the functions described in IBM's DOS Technical Reference.
-
- To use these routines, include PRINTQ.H in your program, and
- PRINTQ.OBJ (which was compiled using small model) in the list of
- modules for the linker. I built these routines using Microsoft C
- v4.0. Since I have never used any previous versions of the
- compiler, I have no idea whether these routines are compatible
- with previous versions.
-
- These routines do no error checking. They are simply a low level
- interface to the resident part of PRINT.COM which expects the
- non-resident part of PRINT.COM to perform ALL validation.
-
- These routines were originally distributed in a single arc file
- with the following contents:
-
- PRINTQ.C Source Code.
- PRINTQ.H Include file that defines the functions.
- PRINTQ.OBJ Object file.
- PRINTQ.TXT Printable, typable documentation.
-
- I am placing these routines in the public domain. Feel free to
- use them in whatever way you please. If you improve upon them
- please send me a copy.
-
- Scott G. Ainsworth
- 3870 Buchanan Drive
- Virginia Beach, VA 23456
-
-
-
- Version 1.1, 21 March 1987, Scott Ainsworth.. Version 1.1, 21 March 1987, Scott Ainsworth..
-
- I finally figured out how status was returned from function 1.
- It is really strange. If the submit works, either 0x12E0 or
- 0x3E01 is returned depending on whether the queue was empty
- before the submit request. So, I test to see if the returned
- value is greater than 0x1000; if it is, I assume the submit
- worked and return a zero from PrintSubmit. If the returned value
- is less than 0x1000, I assume the submit failed and return the
- value unchanged.
-
-
-
-
- C Interface for PRINT.COM -- Version 1.1, 21 Mar 87 2 C Interface for PRINT.COM -- Version 1.1, 21 Mar 87 2
-
-
-
-
-
- PrintInstalled (function 0) PrintInstalled (function 0)
-
- This routine checks to see if PRINT.COM is Installed by calling
- the Multiplex Interrupt (0x2F). If it is, TRUE is returned;
- otherwise, FALSE is returned.
-
- PRINT.COM is multiplex number 1. The Get Installed State is
- function number 0. After the interrupt, AL is 0xFF if PRINT.COM
- is Installed.
-
- Parameters:
-
- None.
-
- Returns:
-
- TRUE or FALSE indicating if PRINT.COM is Installed.
-
- Calling Sequence:
-
- int Status;
- Status = PrintInstalled ();
-
-
-
-
- C Interface for PRINT.COM -- Version 1.1, 21 Mar 87 3 C Interface for PRINT.COM -- Version 1.1, 21 Mar 87 3
-
-
-
-
-
- PrintSubmit (function 1) PrintSubmit (function 1)
-
- Queue a file to be printed. Return the an error code. The file
- must consist of a drive designator, full path, and full name.
- file names containing wild card characters are not allowed.
-
- Parameters:
-
- File -- Pointer to string containing name to be queued.
-
- Returns:
-
- Status: 0 = No error, file queued.
- 2 = File not found.
- 3 = Path not found.
- 4 = Too many open files.
- 5 = Access Denied.
- 8 = Queue Full.
- 9 = Busy.
- 12 = Name too long.
- 15 = Invalid Drive.
-
- Calling Sequence:
-
- char *File;
- int Status
- Status = PrintSubmit (File);
-
-
-
-
- C Interface for PRINT.COM -- Version 1.1, 21 Mar 87 4 C Interface for PRINT.COM -- Version 1.1, 21 Mar 87 4
-
-
-
-
-
- PrintCancel (function 2) PrintCancel (function 2)
-
- Cancel one or more files from the queue. File names containing
- wild card characters are allowed.
-
- Parameters:
-
- File -- Pointer to string containing name to be canceled.
-
- Returns:
-
- Nothing.
-
- Calling Sequence:
-
- char *File;
- PrintCancel (File);
-
-
-
- PrintCancelAll (function 3) PrintCancelAll (function 3)
-
- Cancel printing of all files currently in the print queue.
-
- Parameters:
-
- None.
-
- Returns:
-
- Nothing.
-
- Calling Sequence:
-
- PrintCancelAll ();
-
-
-
-
- C Interface for PRINT.COM -- Version 1.1, 21 Mar 87 5 C Interface for PRINT.COM -- Version 1.1, 21 Mar 87 5
-
-
-
-
-
- PrintStatus (function 4) PrintStatus (function 4)
-
- Freeze the print queue and return a pointer to the queue list and
- the number of errors encountered trying to write the last char to
- the print device.
-
- Parameters:
-
- ErrCnt -- Pointer to an integer in which to store error
- count.
-
- QueuePtr -- Pointer to a far pointer to char in which to
- store the address of the print queue.
-
- Returns:
-
- Nothing.
-
- Calling Sequence:
-
- int ErrCnt;
- char far*QueuePtr;
- PrintStatus (&QueuePtr, &ErrCnt);
-
-
-
- PrintStatusEnd (function 5) PrintStatusEnd (function 5)
-
- Release the queue from PrintStatus and return the status.
-
- Parameters:
-
- None.
-
- Returns:
-
- Nothing.
-
- Calling Sequence:
-
- PrintStatusEnd ();