|
Options not supported
- AUTORESET/NORESET - We're not really sure what this does?
- ATTRB/NOATTRB - Doesn't map to T-27 space. No effect.
- NOQUIET/QUIET - Doesn't map to T-27 space. No effect.
- WRITE_SUPER/WRITE_WRITE/WRITE_READ/ WRITE_NONE/SUPER_WRITE/READ_WRITE
The HLLAPI spec doesn't even cover necessary details on how these modes should work.
If anyone wants these, let us know.
Non-standard behavior:
TRACE CONTROL
You can call WinHLLAPI with function SETSESSIONPARAMETERS to set Trace mode on and
off ("TRON"/"TROFF") -EVEN BEFORE YOU HAVE CALLED WinHLLAPIStartup()-. This gives
you programmatic control over tracing the entire session. Note that attempting to
set any other SETSESSIONPARAMETER option without being connected to a session will
fail.
Extra options added:
RAWIO/STDIO
The RAWIO switch affects the behavior of COPYPS. In raw mode, the last message received
from the mainframe will be copied up to its full length. On return, Datalen = the
number of bytes copied. In theory messages can be as large as 10K, in practice messages
are typically <2K. Caller is responsible for ensuring a large enough destination
buffer. Message data is always the last message received. Be warned that consecutive
messages will overwrite each other if not picked up in time.
WINCTRLMDI/WINCTRLCHILD
The HLLAPI spec is single-window centric. Ultralite is an Multiple Document Interface
(MDI) based standard Windows application. This switch affects all windowing functions:
CONNECTWINDOWSERVICES, DISCONNETWINDOWSERVICES, QUERYWINDOWCOORDINATES, WINDOWSTATUS,
and CHANGEPSNAME. When WINCTRLMDI is set, calls affect the entire Ultralite window,
with WINCTRLCHILD, only the actual session window within the emulator window is
affected.
FLDNATIVE/FLDSTD
The T-27 has a rich set of field & character attributes lost in 3270 translation.
When FLDNATIVE is set the attribute byte returned by QUERYFIELDATTRIBUE returns
the following:
struct T27FieldAttribs {
BYTE underline:1; // underline
BYTE bold:1; // bold
BYTE blink:1; // blinking
BYTE inverse:1; // inverse video
BYTE secured:1; // field is a secured (password) field
BYTE rjustify:1; // right justified
BYTE readonly:1; // read only?
BYTE isfield:1; // is it a field?
};
Note that the 'isfield' bit is the highest bit in the byte (0x80), and underline
is the lowest (0x01).
AUTOSTART/NOAUTOSTART
AUTOSTART, like TRON/TROFF, can be called even before you are connected to a session.
AUTOSTART alters the behavior of CONNECTPS. When CONNECTPS is called with AUTOSTART,
the HLLAPI DLL checks to see if PCLink is running. If not, it locates and launches
the emulator. Then it waits for a session with the requested session short name
to start. The effect is such that if the session is automatically loaded (using
PCLink's Save Workspace feature), the call to CONNECTPS will succeed and be connected
to an open, ready to use session.
|