home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 10 Tools
/
10-Tools.zip
/
os2prgc.zip
/
testfile.c
< prev
next >
Wrap
C/C++ Source or Header
|
1995-03-06
|
4KB
|
135 lines
#define INCL_DOS
#define INCL_DOSERRORS
#include <os2.h>
#include <stdio.h>
#include "file_io.h"
#include "comm.h"
#include "str.h"
void main(void)
{
INT f;
unsigned long items[6];
CHAR inbuff[128], buff[128];
PSZ p;
ULONG conXY;
USHORT conMode;
ULONG ulAction = 0;
APIRET rc = 0;
/* sample file I/O stuff */
if (InitFileIO())
{
vidStr("File I/O Test\r\n\nOpening file `TEST.TXT'.\r\n");
f = OpenFile("test.txt", &ulAction, 0, 0,
OPEN_ACTION_OPEN_IF_EXISTS,
OPEN_ACCESS_READONLY | OPEN_SHARE_DENYNONE,
NULL);
items[0] = f;
formatStr(buff, "Returned Handle = %u.\r\n", items);
vidStr(buff);
if (f)
{
while(!rc)
{
rc = LineRead(f, inbuff);
if ((!rc) || (rc==ERROR_HANDLE_EOF))
{
p = charinstr(inbuff, '\n');
if (p)
*p = 0;
items[0] = (unsigned long)inbuff;
formatStr(buff, "%s\r\n", items);
vidStr(buff);
}
}
CloseFile(f);
}
else
vidStr("File open failed.\r\n");
vidStr("\r\nPress any key for file write test...");
CharFromPort((HFILE)0);
vidStr("\r\n\nOpening `JUNK.TXT' for write.\r\n");
f = OpenFile("junk.txt", &ulAction, 0, 0,
OPEN_ACTION_CREATE_IF_NEW | OPEN_ACTION_REPLACE_IF_EXISTS,
OPEN_ACCESS_READWRITE | OPEN_SHARE_DENYNONE,
NULL);
items[0] = f;
formatStr(buff, "Returned Handle = %u.\r\n", items);
vidStr(buff);
if (f)
{
items[0] = LineWrite(f, "Line 1\nLine 2\n");
formatStr(buff, "LineWrite Results: %u, ", items);
vidStr(buff);
items[0] = LineWrite(f, "Line 3\n");
formatStr(buff, "%u, ", items);
vidStr(buff);
items[0] = LineWrite(f, "Line 4 ");
formatStr(buff, "%u, ", items);
vidStr(buff);
items[0] = LineWrite(f, "Line 5\n");
formatStr(buff, "%u.\r\n", items);
vidStr(buff);
CloseFile(f);
}
else
vidStr("File open/creation failed.\r\n");
CleanUpFileIO();
}
vidStr("\r\nPress any key for ANSI control and console mode tests...");
CharFromPort((HFILE)0);
conMode = vidGetConsoleMode();
vidSetConsoleMode(2);
comClearScreen((HFILE)0);
comSetAttributes((HFILE)0, NULL, "34", "43");
DisplayBox((HFILE)0, 2, 2, 10, 5, SINGLE_LINE_BOX, TRUE);
comSetAttributes((HFILE)0, NULL, "32", "43");
DisplayBox((HFILE)0, 4, 4, 10, 5, DOUBLE_LINE_BOX, FALSE);
comSetAttributes((HFILE)0, NULL, "33", "41");
DisplayBox((HFILE)0, 6, 6, 10, 5, DOUBLE_TOP_BOX, TRUE);
comSetAttributes((HFILE)0, NULL, "31", "45");
DisplayBox((HFILE)0, 8, 8, 10, 5, DOUBLE_SIDE_BOX, FALSE);
comSetAttributes((HFILE)0, NULL, "36", "44");
DisplayBox((HFILE)0, 10, 10, 10, 5, NO_IBMCHAR_BOX, TRUE);
vidStr("Press any key to continue. . .");
CharFromPort((HFILE)0);
comSetAttributes((HFILE)0, "0", NULL, NULL);
comGotoXY((HFILE)0, "1", "20");
items[0] = vidGetConsoleMode();
formatStr(buff, "\r\nCurrent console mode = %u\r\n", items);
vidStr(buff);
conXY = vidGetConsoleXY();
items[0] = LOUSHORT(conXY);
items[1] = HIUSHORT(conXY);
formatStr(buff, "\r\nRows = %u, Columns = %u\r\n", items);
vidStr(buff);
vidStr("Press any key to continue. . .");
CharFromPort((HFILE)0);
vidSetConsoleMode(conMode);
}