1) When characters are received the Apax.InBufferCount does not reflect the
size of the Apax.Input register without first performing a DoEvents().
Example1:
'This works with the MSCOMM control but does not work with the Apax
control
'The loop times out with InBufferCount reporting "0" yet data is in
the Input buffer
TOut! = Timer + TimeOut
Prompt$ = "mon: "
While InStr(1, X$, Prompt$) = 0 and Timer < TOut!
If frmMain!Apax1.InBufferCount > 0 Then
X$ = X$ + frmMain!Apax1.Input
End If
Wend
Example2:
'This works with both the MSCOMM control and the Apax control
TOut! = Timer + TimeOut
Prompt$ = "mon: "
While InStr(1, X$, Prompt$) = 0 and Timer < TOut!
DoEvents
If frmMain!Apax1.InBufferCount > 0 Then
X$ = X$ + frmMain!Apax1.Input
End If
Wend
2) When the Apax terminal window control is resized [.width or .height
changed], the terminal window seems to loose it's former cursor position
when the resize forces to scroll bars to activate/deactivate.
3) When the Apax terminal window has focus and you switch to another windows
application, upon return the terminal no longer has focus.
4) Clicking on the Apax terminal window's verticle or horizontal scroll bar
will cause the focus to be lost in the Terminal Window.
5) The Apax terminal window's vertical scroll bar [in VT100 emulation mode]
generates a fatal error upon scrolling to the bottom of the scroll box after
receiving certain types of data.
In particular, the Apax VT100 terminal's Row property is set to "24".
The host sends the VT100 scroll window command: <Esc>[3;25r
This directs the terminal to set its scroll area to lines 3-25. The
scroll bar and display window are now "out-of-sync" and when a "25th"
<cr><lf> is received the Apax encounters a fatal error.
See "Apax1 Terminal Crashes" for additional detail.
6) The ShowTerminalButtons and ShowDeviceSelButton pulldown boxes do not
show the initial state of their associated properties.
i.e. ShowTerminalButtons does not show the state of the .Emulation
property
ShowDeviceSelButton does not show the state of the .DeviceType
property
7) The provided Output code in the example program ExMsComm.vbp is wrong:
Dim i, Count, S()
Count = Len(txtOutput.Text)
ReDim S(Count) 'This array is one element too long.
'The result produces a <null> at the end of each string.
For i = 1 To Count
S(i - 1) = GetChar(txtOutput.Text, i)
Next
Apax.Output = S
It should be:
Dim i, Count, S()
Count = Len(txtOutput.Text)
If Count
ReDim S(Count - 1)
For i = 0 To Count - 1
S(i) = GetChar(txtOutput.Text, i + 1)
Next
Apax.Output = S
End If
=========================
Other
1) Upon execution, the Apax control sets itself to the top ZORDER.
This makes is hard to superimpose other controls on top of the Apax
controls Toolbar for such purposes as adding additional functions to the
tool bar.
This makes it impossible to include a text or combobox control as a
daughter to the Apax controls Toolbar.
Answer:
When we are receiving data as in the OnRXD or OnDataTriggger events, having
thread priority is a must for being able to receive the data without taking
a back seat to another application.