PowerCom library

PowerXpp, PowerSql, PowerCom, PowerWeb, PowerCrp, PowerUtl, DBM, DBA Windows

PowerCom is an add-on library for client/server application development in Xbase++. PowerCom library is function-oriented and implements top-down modular style of programming. Functions and their parameters are very flexible, user-friendly, intuitive and easy to use.

PowerCom library can create Windows sockets that enables Xbase++ programmers to develop advanced Internet, intranet, and other network-capable applications to transmit application data across the wire, independent of the network protocol being used.

PowerCom library provides Xbase++ programming tools for creating client/server applications using Internet technologies. Applications can create servers and clients and perform communication between them using message passing via TCP/IP sockets. On the request of the client, the server can execute the assigned function with passed parameters and return the result of the execution to the client. This makes it possible to create truly distributed applications with remote procedure calls (RPC).

PowerCom library can create servers and clients for various Internet protocols: TCP/IP, SMTP, POP3, FTP, HTTP, WebSocket and TLS. PowerCom functions implement Internet protocols according to the respective RFC specifications.

PowerCom functions represent object abstractions of internal server/client classes. The functions encapsulate all functionalities of various Internet protocols, which are defined as function parameters. The functions are generalized and automated and perform internally the logic of the server/client classes. You don't need to know object-oriented programming, classes, methods, properties and events. Instead, use PowerCom functions as building blocks to create fast and efficient programs with a minimum number of code lines and that use the minimum amount of memory resources.

PowerCom library contains multiple modules listed in the following table.

Module Description
PowerComSck Socket
PowerComTcp TCP/IP server/client
PowerComMail Mail clients
PowerComFtp FTP client
PowerComHttp HTTP server/client
PowerComWs WebSocket server/client
PowerComTls TLS client

PowerCom library supports Alaska Xbase++ V.2.0 to V.1.8. It is available in Serbian and English language, but can be easy modified by the user in any language.

Demo program of PowerCom library with complete documentation and examples can be downloaded on the Download page.

PowerCom Library Features
PowerComSck Module
Socket Create and manage Windows sockets that are used for inter process communication. Can create stream (TCP) and datagram (UDP) sockets for various address families.
PowerComTcp Module
Socket server Create TCP/IP socket server and accept client requests. Can send and receive messages of any data type and files.
Socket client Create TCP/IP socket client and send requests to the server. Can send and receive messages of any data type and files.
PowerComMail Module
SMTP client Create SMTP client and send messages to the server. Support TLS security and SASL authentication. Can create log file.
POP3 client Create POP3 client and send requests to the server. Support TLS security and SASL authentication. Can create log file.
PowerComFtp Module
FTP client Create FTP client and send requests to the server. Can connect via a proxy server. Can upload and download files and text data. Support TLS security. Can create log file.
PowerComHttp Module
HTTP server Create HTTP server and accept client requests. Manage session data, cookies and HTTP request parameters.
HTTP client Create HTTP client and send requests to the server. Can connect via a proxy server. Support TLS security.
PowerComWs Module
WebSocket server Create WebSocket server and accept client requests. Support desktop and web clients. Can send and receive text and binary messages. Manage session data, cookies and HTTP request parameters.
WebSocket client Create WebSocket client and send requests to the server. Can send and receive text and binary messages.
PowerComTls Module
TLS client Create TLS client and send requests to the server. Support protocols from SSL 3.0 to TLS 1.3. Support session resumption.