Category : Dbase (Clipper, FoxBase, etc) Languages Source Code
Archive   : QUEUE.ZIP
Filename : QUEUE.DOC
Output of file : QUEUE.DOC contained in archive : QUEUE.ZIP
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͵ QUEUE ÆÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
ÀÄÄÄÄÄÄÄÙ
Version:
ÄÄÄÄÄÄÄÄ
1.1
Assembly date:
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
9/26/87
Environments:
ÄÄÄÄÄÄÄÄÄÄÄÄÄ
BIN version works with Quicksilver, FoxBASE+, dBASE III Plus
OBJ version works with Quicksilver and Clipper
Requirements:
ÄÄÄÄÄÄÄÄÄÄÄÄÄ
o DOS 3.0 or greater.
o PRINT.COM must be loaded.
QUEUE will return an error code if either of these conditions are not met
(see below).
General Description:
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
QUEUE communicates with the DOS print queue (loaded with PRINT.COM). To find
out how to install this print queue, refer to your DOS manual (3.0 or greater).
QUEUE calls DOS's "multiplex interrupt" (INT 2fh) with the code for
PRINT.COM communication and with the service you request.
Syntax:
ÄÄÄÄÄÄÄ
mstrvar = service + " " [+ filespecname|return area]
The service requested is passed as an ASCII digit. If a filespec is
specified, at least one space must separate the service from the filespec
(examples below).
CALL (CCALL) QUEUE WITH mstrvar
Return values are presented in the discussions of each function below.
For a further explanation of CALL/CCALL usage, see SYNUTILS.DOC, which should
have been included in the ARChive with this file.
-- 1 --
ÚÄÄÄÄÄÄÄ¿
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͵ QUEUE ÆÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
ÀÄÄÄÄÄÄÄÙ
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Examples:
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ Function 0: GET INSTALL STATUS ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
Example:
ÄÄÄÄÄÄÄÄ
m="0"
[C]CALL QUEUE WITH m
DO CASE
CASE ASC(m) = 1
?"You cannot use this program without DOS 3.x or better"
* note that this error can occur with any function
CASE ASC(m)=255
?"Print queue is installed"
CASE ASC(m)=32
?"Print queue is not installed, but may be if you wish"
CASE ASC(m)=33
?"Print queue is not installed, conflict with another program detected"
ENDCASE
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ Function 1: SUBMIT FILE ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
Example:
ÄÄÄÄÄÄÄÄ
This submits a file called \mydir\foo.bar (no wildcards) to the queue:
m = "1 \mydir\foo.bar"
[C]CALL QUEUE WITH m
(no return code -- you can use function 8 to confirm success)
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ Function 2: CANCEL FILESPEC ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
Example:
ÄÄÄÄÄÄÄÄ
This cancels ????????.asm from queue--wildcards ok, but with a catch--I can
only get the ? wildcard to work, not * (this with DOS 3.30):
m = "2 ????????.asm"
[C]CALL QUEUE WITH m
(no return code -- you can use function 8 to confirm success)
-- 2 --
ÚÄÄÄÄÄÄÄ¿
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͵ QUEUE ÆÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
ÀÄÄÄÄÄÄÄÙ
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ Function 3: CANCEL ALL FILES ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
Example:
ÄÄÄÄÄÄÄÄ
m = "3"
[C]CALL QUEUE WITH m
(no return -- use function 6 to confirm)
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ Function 4: PAUSE PRINTING ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
Example:
ÄÄÄÄÄÄÄÄ
m = "4"
[C]CALL QUEUE WITH m
(no return)
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ Function 5: RESTART PRINTING ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
Example:
ÄÄÄÄÄÄÄÄ
m = "5"
[C]CALL QUEUE WITH m
(no return)
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ Function 6: GET CURRENT FILE ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
Example:
ÄÄÄÄÄÄÄÄ
m = "6" + SPAC(63) && maximum length is 64 bytes, better make room 'cause
&& otherwise you may have other memvars overwritten when
CALL QUEUE WITH m && the current file's name is copied in...
IF LEFT(m,1)="-" && error return for this call is "-"
?"no files in cue"
ELSE
?"Currently printing file " + m
ENDIF
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ Function 7: GET PRINT STATUS ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
Example:
ÄÄÄÄÄÄÄÄ
m = "7"
CALL QUEUE WITH m
IF m="0"
?"No errors detected"
ELSE
?"Errors on list device indicate that it"
?"may be off-line. Please check it."
ENDIF
-- 3 --
ÚÄÄÄÄÄÄÄ¿
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͵ QUEUE ÆÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
ÀÄÄÄÄÄÄÄÙ
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ Function 8: CONFIRM FILE ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
Example:
m="8 \debase\dbase.exe"
CALL QUEUE WITH M
IF m="0"
?"That file is not in the queue"
ELSE
?"\debase\dbase.exe is in the print queue"
ENDIF
* Your filespec will be uppercased by QUEUE. No wildcards are allowed, and
* pathname * must be exactly the same as that submitted. If you RUN PRINT
*
* (see below).
______________________________________________________________________________
______________________________________________________________________________
Error returns:
ASC(passed param) will be 1 if the DOS level is less than 3.
This is the case even where it is stated above that there is no
return value. Note that there is no way of retrieving the returned
value if you pass a literal string, as in some of the examples above.
This should not matter if you issue a GET INSTALL STATUS first.
"PRINT not installed" error codes (ASC(m) = 20 or 21) are *only*
returned from function 0 (see above). Therefore it is up to the
programmer to make sure that PRINT is installed before requesting
other services.
______________________________________________________________________________
______________________________________________________________________________
Notes on PRINT usage:
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
It's all in your DOS manual, but make sure you do not RUN PRINT for the
first time from inside deBASE. You must start it before dBASE, FoxBASE,
or your compiled application loads, as it is a TSR ("terminate-stay-resident"
program).
______________________________________________________________________________
-- 4 --
ÚÄÄÄÄÄÄÄ¿
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͵ QUEUE ÆÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
ÀÄÄÄÄÄÄÄÙ
Miscellaneous:
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
If you RUN PRINT *.PRG, the drive and subdirectory will be appended to
each file name. On the other hand, files submitted with QUEUE are found
in the queue in the same form they were submitted, i.e., with or without
the drive and/or subdirectory, exactly as they were specified. Evidently
the non-resident portion of PRINT handles affixing of the drive and
subdirectory.
Function 2f handling by the resident portion of PRINT is buggy. I've already
reported some of the bugs to IBM. Also, I have only tested this with DOS 3.3.
I welcome your reports of problems with the program, and will fix
them||gripe to IBM, whichever is appropriate. The doc on error returns is
really deficient, I'm trying to get more info, but as far as I can see it just
doesn't work reliably with 3.3, so I didn't incorporate it.
R. Russell Freeland
Synergy Corp.
CIS 76146,371
1780 SW 43 Ave.
Ft. Lauderdale FL, 33317
voice:305/792-1866
Enjoy!
-- 5 --
Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!
This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.
But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/