home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
World of Shareware - Software Farm 2
/
wosw_2.zip
/
wosw_2
/
QBAS
/
QBWNET10.ZIP
/
NETCOMM.DOC
< prev
next >
Wrap
Text File
|
1993-06-22
|
12KB
|
319 lines
INTRODUCTION
QBWARE/Net is a standard network library for Basic that will provide
a standard API to network services offered by IPX, SPX and NetBios.
The shareware release supports ONLY IPX at this time. This library
of functions supports Microsoft Basic PDS and Microsoft
Quickbasic v4.5.
LICENSE INFORMATION
All versions of the QBWARE/Net library, are not public
domain software, nor are they free software.
QBWARE/Net is copyright (C) 1991, 1993 by AJM Software
Non-registered users are granted a limited license to use QBWARE/Net
on a trial basis for the purpose of determining whether it is
suitable for their needs. Use of QBWARE/Net, except for this limited
purpose, requires registration. Use of non-registered copies of
QBWARE/Net by any person, business, corporation, governmental agency
or other entity institution is strictly forbidden.
Registration permits a user the license to use QBWARE/Net for
development purposes, only on a single computer. QBWARE/Net can be
included into any program and distributed in library form only
without royalty. A registered user may use the program on a
different computer, but may not use the program on more than one
computer at the same time.
All users are granted a limited license to copy QBWARE/Net only for
the trial use of others subject to the above limitations, and
also the following:
QBWARE/Net must be copied in unmodified form, complete with
the file containing this license information.
The full QBWARE/Net documentation must be included with the
copy.
No fee, charge or other compensation may be accepted or
requested by any licensee, except a handling fee not to
exceed $10.00.
QBWARE/Net may not be distributed in conjunction with any
other product.
The ASSEMBLY source code for QBWARE/Net may NOT be distributed
under any circumstances.
Operators of electronic bulletin board systems (Sysops) may
post QBWARE/Net for downloading by their users only as long as
the above conditions are met.
Distributors of public domain or user supported software,
other than operators of electronic bulletin board systems,
may distribute copies of QBWARE/Net subject to the above
conditions only after obtaining written permission from AJM
Software.
WARRANTY
AJM Software makes no warranty of any kind, express or implied,
including without limitation, any warranties of merchantability
and/or fitness for a particular purpose. AJM Software shall not
be liable for any damages, whether direct, indirect, special or
consequential arising from a failure of this program to operate
in the manner desired by the user. AJM Software shall not be
liable for any damage to data or property which may be caused
directly or indirectly by use of the program.
IN NO EVENT WILL AJM Software BE LIABLE TO YOU FOR ANY DAMAGES,
INCLUDING ANY LOST PROFITS, LOST SAVINGS OR OTHER INCIDENTAL OR
CONSEQUENTIAL DAMAGES ARISING OUT OF YOUR USE OR INABILITY TO USE
THE PROGRAM, OR FOR ANY CLAIM BY ANY OTHER PARTY.
REGISTRATION
Remit to: AJM Software Order Form
40200 Pinetree
Plymouth, MI 48170-4513
Please send:
____ QBWARE/Net Disk (Evaluation only) ......... @ $ 10.00 ea $ ______
(includes all routines and manual on disk)
____ QBWARE/Net Registration ................... @ $ 49.00 ea $ ______
(includes QBWARE/Net distribution disk)
Subtotal ______
C.O.D. Fee ($5.00) ______
Shipping and Handling (Outside of U.S. only) ______
Total $ ______
Payment by: ( ) Check ( ) C.O.D. [NO CREDIT CARDS]
Name: ____________________________________________________________
Company: ____________________________________________________________
Address: ____________________________________________________________
: ____________________________________________________________
: ____________________________________________________________
Day Phone: _________________________ Eve: ___________________________
ORDERS OUTSIDE THE US: Please include an additional $10.00 to cover
additional postage and handling costs. No C.O.D.'s will be accepted
on orders delivered outside the US.
OVERVIEW
The QBWARE/Net libraryy allows you to develop code in Basic or
Quickbasic that can run in an IPX/SPX or NetBios environment
without change. The library contains the following FUNCTIONs.
NetStart%
NetCall%
NetListen&
NetSend%
NetReceive%
NetConverse%
NetBroadcast%
NetHangUp%
NetStop%
NetLastError%
These FUNCTIONs can be used to establish peer-to-peer communications
with other workstations on a Local Area Network.
USAGE
NOTE THAT YOU MUST USE THE /O OPTION WHEN COMPILING PROGRAMS USING
QBWARE/Net.
The library contains the following files:
NETWORK.BI This file should be included in your program using
REM $INCLUDE: 'NETWORK.BI'
It contains PROTOTYPE statements for each function as
well as TYPE declarations for the data structures by
the library.
IPXLIBxx.OBJ This file should be linked with your application
program. It contains the high-level interface to
the IPX routines used to communicate across the
network. There are language dependent versions of
this file IPXLIBBC.OBJ is used for BASIC PDS v7.1 and
IPXLIBQB.OBJ is to be used with Quickbasic v4.5.
NETWORK.LIB This file contains the low-level protocol specific
routines used to communicate across the network.
PILEBC.BAT Sample compile batch job for BASIC PDS v7.1. It is
included for illustration purposes. If you elect to
use this batch file to compile your programs, please
modify the pathnames to fit your development
environment.
PILEQB.BAT Sample compile batch job for Quickbasic. It is
included for illustration purposes. If you elect to
use this batch file to compile your programs, please
modify the pathnames to fit your development
environment.
FUNCTIONS
DECLARE FUNCTION NetStart% (St AS NetStation)
NetStart initializes all Network communications buffers and
determines how many concurrent requests can be handled. The
NDSessions variable contains the number of concurrent requests.
It should be initialized before calling NetStart. If not
specified, it defaults to 12. Each session requires about
600 bytes of storage. Your local workstation ID is returned
in the variable St.
DECLARE FUNCTION NetCall% (Target AS NetStation)
NetCall establishes communications with another station on the
network. In a connectionless environment like IPX, this call
is meaningless and always returns 0. It should be used, however,
to insure compatibility with connection-oriented services like
NetBios and SPX. The Target must be the network name of the
machine that you are trying to establish a connection to.
DECLARE FUNCTION NetListen& ()
NetListen starts a listen session and enables your workstation to
receive messages from other stations on the network. You cannot
receive messages unless you first issue a NetListen. This should
generally be the first thing your program does after calling
NetStart. If you expect to receive more than one message at a
time or communicate with more than one station at a time, you
should issue multiple NetListen calls. Each time you execute
this call, one session is permanently reserved. Because of this,
you should never execute this call more than the number in NDSession
less 4. In other words, do not execute NetListen more than
NDSession - 4 times.
DECLARE FUNCTION NetSend% (Target AS NetStation, Message AS NetMsg)
NetSend sends a message to the target station. Note that the Message
cannot exceed 512 characters.
DECLARE FUNCTION NetReceive% (Source AS NetStation, Message AS NetMsg)
NetReceive checks to see if any Network messages have been received.
If a message is received, the sending station is returned in Source.
You should regularly call NetReceive if you expect to receive messages
from many stations.
DECLARE FUNCTION NetConverse% (Target AS NetStation, SendMsg AS NetMsg, RecvMsg AS NetMsg)
NetConverse send a message to the target station and waits up to 5
seconds for a response. In a connectionless service like IPX, this
service sends a message and waits for the next response from anyone.
It should not be used if you are expecting message from multiple
stations. The NDTimeOut& parameter can be used to vary the timeout
length.
DECLARE FUNCTION NetBroadcast% (NetHandle AS Long, Message AS NetMsg)
NetBroadcast sends a message to anyone on the network who is
listening. A broadcast will generally work only on the local
network and usually does not cross a bridge. In the IPX
implementation, you can initialize NDNetNum$ to the appropriate
network number before making this call and the broadcast will
be routed to that network.
DECLARE FUNCTION NetHangUp% (Target AS NetStation)
NetHangUp terminates the connection between your workstation
and the target station. In a connectionless service like IPX,
this call is for compatibility only but should always be used
to insure compatibility with the connection-oriented services
like SPX and NetBios.
DECLARE FUNCTION NetStop% ()
NetStop frees up the communication buffers and control blocks.
These areas are then returned to Basic for its use.
DECLARE FUNCTION NetLastError% ()
This function returns the extended error code after a call
fails. Anytime a FUNCTION returns a -1, call NetLastError
to determine a more detailed cause for the failure.
Possible values are:
IPX implementation
249 ECB cannot be cancelled
250 Destination node not found
254 Socket Table is full
255 Socket is already open
Listening Socket does not exist
ECB is not in use