ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

This content has been translated automatically.  Click here  to view the French version.
Help / WLanguage / WLanguage functions / Standard functions / Windows functions / Serial/Parallel Ports functions
  • Detecting events and threads
  • Managing very close events
  • Disabling one or more events
  • Closing the port
  • Using an external library: RXTX
WINDEV
WindowsLinuxJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac Catalyst
Others
Stored procedures
Branches an event on a serial port.
WEBDEV - Server code This function returns information regarding the server.
Example
// Détection de caractères sur le port COM1
sEvent(1, sEveCharReceived, "LectureCaractère")
// -- Procédure LectureCaractère
PROCEDURE LectureCaractère(NumPort, NumEvénement)
Trace(sRead(1, sInEntryQueue(1)))
Syntax
<Result> = sEvent(<Port number> , <Event managed> , <WLanguage procedure>)
<Result>: Boolean
  • True if the function was run,
  • False otherwise. sEvent has no effect if the port has not been previously opened in "Event management" mode (with sOpen).
<Port number>: Integer
  • Serial port number (1, 2, 3, ...32 for COM1, COM2, COM3, ... COM32).
  • Port number returned by sOpen (if this function was called with a port name).
<Event managed>: Integer constant (or combination of constants)
Event to retrieve on the port:
sEveBreak
(value: 64)
Receive a "Break line" event
sEveCharReceived
(value: 1)
Receive a character
sEveCTS
(value: 8)
Change of CTS status
sEveDSR
(value: 16)
Change of DSR status
sEveEntryQueue80
(value: 1024)
The input buffer is full at 80%
Java This constant is not available.
sEveError
(value: 128)
Detect an error on the line
Java This constant is not available.
sEvePrinterError
(value: 512)
Printer error detected
Java This constant is not available.
sEveRing
(value: 256)
Detect the "Ring" signal (ring)
sEveRLSD
(value: 32)
Change of RLSD status
Java This constant is not available.
sEveTransmitCompleted
(value: 4)
The output buffer is empty
<WLanguage procedure>: Procedure name
Name of the WLanguage procedure called whenever the specified event is detected. This procedure has the following format:
PROCEDURE <Procedure name>(<Port number>, <Event number>)
where <Port number> corresponds to the port where the event occurred
where <Event number> corresponds to one of the event constants.
Remarks

Detecting events and threads

The detection of events is performed in a specific thread of WLanguage. The call to the WLanguage procedure is performed in this thread. This procedure is therefore subject to thread limitations (particularly for display).
For more details on threads, see Managing threads.

Managing very close events

If another event is triggered during the procedure triggered by the event, this last event will not be detected.
If very close events are likely to be triggered, we advise you to:
  • read the event data (with sRead) in the procedure triggered by sEvent,
  • continue the rest of the process in another thread.

Disabling one or more events

To disable the management of one or more events, use sEndEvent.

Closing the port

When closing the port, all the events managed on this port are disabled. When re-opening the port, you must re-run sEvent to define the events managed on this port.
Java

Using an external library: RXTX

In Java, the use of serial and parallel port manipulation functions (functions sOpen, sWrite, sRead, ...) requires the presence of an external library: RXTX.
This library includes a Jar archive and one or more native libraries that depend on the operating system on which the application is run. To use these functions:
  • the Jar archive (RXTXComm.jar) must:
    • be found in the same directory as the Java application generated by WINDEV,
    • be found in the execution classpath of the application,
    • be directly included in the generated application (from the wizard for Java generation).
  • the native libraries corresponding to the operating system on which the application is run must be found:
    • in the same directory as the Java application generated by WINDEV,
    • in the path of the application libraries (librarypath).
You can download the RXTX library and its documentation from the following link: http://users.frii.com/jarvi/rxtx/index.html (link valid at the time of writing).
Attention: Infrared port management not available in Java.
Business / UI classification: Business Logic
Component: wd300com.dll
Minimum version required
  • Version 9
This page is also available for…
Comments
Click [Add] to post a comment

Last update: 03/27/2025

Send a report | Local help