How to Do a Print Screen Within a ProgramID: Q59380
|
The code below demonstrates how to do a print screen from within a program under MS-DOS. This is done by executing Interrupt 5 within a program.
The interrupt service directs all its output to the default printer.
The print-screen service prints text or graphics. In graphics mode,
GRAPHICS.COM must be loaded before invoking the print-screen service.
Interrupt 5 does not return any values but the status code is
available at memory location 0050:0000. The values are as follows:
00 No error occurred
01 Indicates that a print-screen operation is in progress
FF The previous print screen was not successful.
#include <stdio.h>
#include <dos.h>
void main (void)
{
int *result;
union REGS inregs, outregs;
/* inregs and outregs are never used but necessary
for the int86 function.
*/
puts("This is a test of prtscr() function.");
int86(0x5, &inregs, &outregs);
result = (int *) 0x00500000;
switch( *result )
{
case 0:
puts("No error occurred.");
break;
case 1:
puts("Print Screen in progress....");
break;
case 0xFF:
puts("ERROR occurred during print screen");
break;
}
}
Additional query words: kbinf 5.10 6.00 6.00a 6.00ax 7.00 1.00 1.50
Keywords : kb16bitonly
Version :
Platform :
Issue type :
Last Reviewed: August 3, 1999