Delphi

Powerful Shipping Container Cargo Optimizer Built In Delphi FireMonkey

Dreamsofts Optimization Ltd. has an award winning shipping container cargo optimizer available in the iOS and Mac stores. The application is also available on Windows and is built in Delphi FireMonkey. Both a professional and an enterprise version are available with different feature sets. The application is described as “First container loading and pallet loading on mobile platform. You have found the easiest container/pallet loading optimization application. Simulate loading your cargo in minutes, not hours or days ! Maximize your shipping with boxes and container/truck/pallet and save money and time.” Some of the awards that the app has received are “Winner Retails & Supply Chain Application Thailand ICT Award 2014” and “Merit award Asia Pacific ICT Award 2014”. It really is an amazing looking application and utilizes the full features of FireMonkey to make it happen. Website http://www.cargooptimizer.com/ (Download) App Store https://apps.apple.com/us/app/cargo-optimizer-max-for-ipad/id1292163026 Mac Store https://apps.apple.com/app/id1481054645?mt=12 Screenshot Gallery

Read More

Create Visually Stunning VCL Application With Konopka Signature VCL Controls 6

KSVC – Konopka Signature VCL Controls 6 is a suite of over 200 Windows UI controls and designers for your Delphi and C++ Builder VCL applications. Konopka Signature VCL components provide unmatched attention to detail, ease of use, and versatility. KSVC also supports full VCL Styles, which can deliver custom and stunning modern Windows applications. To utilize the KSVC components, you should install it from GetIt Package Manager. If you need a guide for using GetIt, follow these steps. KSVC components provide many stunning UI controls for your VCL applications, which you cannot get within RAD Studio. Moreover, you can customize components with quick access to an extensive array of component customizations. If you would like to learn more about Konopka Signature VCL Controls 6 be sure to check out these sources: Konopka Signature VCL Controls – Ray Konopka Overview of New Windows 10 VCL Controls with Ray Konopka – CodeRageXI Head over and check out the listing for the Konopka Signature VCL Controls in the latest version of Delphi available via GetIt in the IDE.

Read More

Learn How To Implement A Custom Resource EMS Package To Extend RAD Server In Delphi

The CustomLogin sample is a server-client EMS demo, that demonstrates how to implement custom Login and Signup endpoints in a custom resource. It requires InterBase to be installed on the machine to connect to the EMS server. Make sure that the EMS Server is running before you run the client project. Location You can find the CustomLogin sample project at: Start | Programs | Embarcadero RAD Studio Sydney | Samples and then navigate to either: Object PascalDatabaseEMSCustomLogin CPPDatabaseEMSCustomLogin Subversion Repository: You can find Delphi and C++ code samples in GitHub Repositories. Search by name into the samples repositories according to your RAD Studio version. How to Use the Sample Run the EMS CustomLogin Package When you run the CustomLoginPackage project, the EMSDevServer starts automatically. The supported platforms for this sample are: 32-bit and 64-bit Windows. Navigate to one of the locations given above and open: Delphi: CustomLoginPackage.dpk. C++: CustomLoginPackageCpp.cbproj. Press Shift+Ctrl+F9 or choose Run > Run Without Debugging. The EMS Development Server opens.If it is the first time you are using EMS on the machine, you need to run the configuration wizard in order to create the EMS server configuration file. When the Confirm dialog opens, click Yes. Click Next until the installation finishes. The EMS Development Server starts automatically. Run the Client Application The client expects the EMSDevServer to be running at localhost:8080. If you are running the server at a different address, modify the properties of the TEMSProvider component. To run the sample on a different machine that the EMS Server, change the URLHost property of the TEMSProvider component to the IP address from the machine where the EMS Server runs.Note: The TEMSProvider component is placed in the CustomLoginClientU unit. On the Project Manager, right-click on ProjectGroup1. Click Add Existing Project…. Navigate to one of the locations given above and open: Delphi: CustomLoginClient.dproj. C++: CustomLoginClientCpp.cbproj. Press F9 or choose Run > Run. Select Use Custom Resource (CustomLogin) to use your Window credentials to authenticate in the EMS Server. In the Signup or Login tabs, insert a UserName and Password and click the buttons: Use the Signup tab to sign up a new user and log on to the EMS Server with that user. Use the Login tab if you previously created an account. Click the Logout button to log off from the EMS Server. In the User tab you can manage your user data: Click the Delete user to delete the user from the EMS Server. Click the Retrieve Fields button to get the custom description field from the EMS Server. { “description”:”New info” } Click the Update Fields button to modify and update the custom description field in the EMS Server. Note: The custom Login and Signup endpoints validate the UserName and Password against Windows users by calling WinApi.Windows.LogonUser. You need to sign up with valid Windows credentials. Implementation EMS Custom Package The custom login package implements custom Login and Signup endpoints, by matching the signature of the Users.LoginUser and Users.SignupUser and implementing these methods. The custom public endpoints are: CustomSignupUser to sign up a new EMS user. CustomLoginUser to log in an existing EMS user. Client Application The client application has a TEMSProvider component, that: The information is managed with TJSONObject and TJSONArray. Please visit the original Embarcadero post for more information about this samble: http://docwiki.embarcadero.com/CodeExamples/Sydney/en/EMS.CustomLogin_Sample

Read More

Create Delphi Web Applications Blazingly Fast With TMS WEB Core

Embarcadero MVP Marcos Moreira shows you how to use TMS WebCore and Delphi to make the most of your web development. TMS WEB Core: Modern SPA Web Application Model Pure HTML5/CSS3/JavaScript based applications Standard component framework for common UI controls and access to browser features Open to consume other existing JavaScript frameworks & libraries Offers Pascal class wrappers for jQuery controls from the jQWidgets library Easy interfacing to REST Cloud Services including to TMS XData for database Easy Deployment and more! One of the most features in the TMS WEB Core is you can debug in Pascal code via the browser. In this CodeRage session, you can learn how to utilize this feature.  Moreover, Marcos Moreira shows you how to manage JavaScript libraries and how to design your web applications easily with the Bootstrap by modifying the HTML code.  Be sure to watch this session to learn more about the TMS WEB Core and its amazing functionalities! Find out more about TMS Web Core over at TMS Software.

Read More

Get Up To Speed FAST On The Delphi Programming Language In An Hour With Delphi Boot Camp!

In this Delphi Boot Camp, you can acquire lots of practice in Delphi programming language. Overview The Basics of Pascal and Delphi Language The Modern Features of Delphi Language Anonymous Methods and Using the Parallel Programming Library Here are the demos Readability and Elegance of Delphi language Great human readability, compared to “curly brace languages” Structure: begin-end Operators: and, or, not, mod, div Statements: for I := 0 to 10 do, function, procedure Separation of declarations and definitions within a single file, with interface and implementation section Units and Namespaces Units define unique namespaces The same symbol can exist in different units Units can have dot notation The unit scope can be used, but it is less efficient Unit enforce visibility constraints Private, protected by default work only across  Units and compilation PAS, DCU, and compilation steps EXE, runtime, and runtime packages Everything is in a Type A strongly-typed and type safe language Rich base type system Ordinal types True enumerations Sets Ranges Distinct numeric, character, and Boolean types Compiled Heavily focused on compile-time type checks Compile time resolutions for faster execution Be sure to check out the whole session. You can find more information on Delphi programming language!

Read More

Quick Dive Into Delphi And The BlockChain, Cryptography, BitCoin, and More

Cryptography is the study of secure communications techniques that allow only the sender and intended recipient of a message to view its contents. Public Key Encryption or Asymmetric cryptography is widely used cryptography which use different keys for encryption and decryption. Receiver needs to publish an encryption key, referred to as his public key which used for encrypt a message but that encrypted message can only be decrypted with the receiver’s private key. Some assurance of the authenticity of a public key is needed in this scheme to avoid spoofing by adversary as the receiver. Generally, this type of cryptosystem involves trusted third party which certifies that a particular public key belongs to a specific person or entity only(Digital Signature). The popular schemes used for Asymmetric cryptography were RSA, ElGamal, ECC. Though these schemes helps to secure your information, doesn’t solves data integrity which can leads to active threat. Security mechanism such as Cryptographic Hash functions are used to tackle the active modification threats. A Cryptographic Hash is fixed size thumbprint that uniquely identifies an arbitrary input irrespective of input size which can be generated from Hash Algorithm. e.g) SHA-256 is a 256-bit thumbprint. CryptoCurrency: The Idea predates BitCoin as electronic cash, an alternative virtual, eletronic currency, that is secured by cryptography, which makes it nearly impossible to counterfeit or double-spend. BitCoin: Designed by pseudonymous Satoshi Nakamoto. Originally described in 2008 paper “bitcoin: A peer to Peer Eectronic cash system” and released an open source in 2009. It is the first decentralized peer-to-peer payment network that is powered by its users with no central authority or middlemen. Nobody owns the Bitcoin network much like no one owns the technology behind email. Bitcoin is controlled by all Bitcoin users around the world. The Bitcoin network is sharing a public ledger called the “block chain”. This ledger contains records called blocks that is used to record transactions across many computers so that any involved block cannot be altered retroactively, without the alteration of all subsequent blocks. Transaction unit is in Satoshi = 0.00000001 BTC. An Individual uses a wallet to access thier BTC- the digital credentials to transfer bitcoins. The authenticity of each transaction is protected by digital signatures corresponding to the sending addresses, allowing all users to have full control over sending bitcoins from their own Bitcoin addresses. Anyone can process transactions using the computing power of specialized hardware and earn a reward in bitcoins for this service. This is often called “mining“. Mining: Is a distributed consensus system that is used to confirm pending transactions by including them in the block chain. Mining is the mechanism that allows the blockchain to be a decentralized security. It secures the bitcoin system and enable a system without a central authority.  It is the process of finding a nonce (number used once – unique number) that generates a SHA-256 hash meeting the current difficulty target. Every 2016 blocks 14 days at 10 min/block, the difficulty target is adjusted based on network’s recent performance. Mining Proof of Work : Miners validate new transactions and record them on the global ledger ( blockchain ). On average, a block ( the structure containing transations ) is mined every 10 minutes. Miners compete to solve a difficult mathematical problem based on a cryptographic hash algorithm. The solution found is called the Proof-Of-Work.  Blockchain : When there is […]

Read More

HeidiSQL Is A Lightweight Open Source Database Management Tool Built In Delphi

Developer Ansgar Becker created HeidiSQL as lightweight open source database management tool which supports MariaDB, MySQL, MS SQL, PostgreSQL and SQLite. It makes use of Delphi’s native VCL styles very effectively to provide a nice looking interface which the developer can customize for their preference. Some of it’s powerful features include connecting via SSH tunnel, creating and editing tables, views, stored procedures, triggers, and more. Additionally it generates nice SQL exports, export directly from one server to another, managers user privileges, imports text files, and exports table rows to CSV, HTML, XML, SQL, LaTeX, Wiki Markup and PHP Array. Plus many more features. An impressive software built in Delphi to be sure and weighing in at only 11.9 megabytes! Website https://www.heidisql.com/ Github Project https://github.com/HeidiSQL/HeidiSQL Screenshot Gallery

Read More

Deploying FireMonkey to HTML5 with FMXLinux on WSL2

The absolutely quickest way to get started with Linux deployment from Delphi is to use the Windows Subsystem for Linux (WSL). As of Windows 10 Version 2004 (Build 19041) WSL2 includes a full Linux kernel, so debugging and everything works as expected. Install WSL2 (You can verify your build number via the System Information applet, but Build 19041 has been available for a while now.) Control Panel Programs Turn Windows features on or off Windows Subsystem for Linux Reboot Install Ubuntu via the Microsoft Store – Ubuntu without version # is the current LTS version and will update in the future. There are other distributions (Kali, Pegwin, Alpine WSL, etc.), but they are all a little different. Launch Ubuntu – Via the Start Menu or from a PowerShell/Terminal/CLI window with the WSL or Ubuntu commands. If you have more than one Linux installed then WSL launches the default one. The first time you launch it be aware it will take a few minutes, and then prompt you for new Linux credentials. Run SetupUbuntu4Delphi21.sh – I made a script on gist that does all the setup for Ubuntu to get it ready to target from Delphi. You can use wget to download it or you can type the commands manually. It creates a script file called pa21.sh in your home folder to quickly launch PAServer. You can modify it to pass default configuration settings. #!/bin/bash echo Updating the local package directory sudo apt update echo Upgrade any outdated pacakges sudo apt full-upgrade -y echo Intall new packages necessary for Delphi sudo apt install joe wget p7zip-full curl openssh-server build-essential zlib1g-dev libcurl4-gnutls-dev libncurses5 xorg libgl1-mesa-dev libosmesa-dev libgtk-3-bin -y echo Clean-up unused packages sudo apt autoremove -y cd ~ echo Downloading LinuxPAServer for Sydney 10.4 (21.0) Update 1 wget https://altd.embarcadero.com/releases/studio/21.0/1/PAServer/LinuxPAServer21.0.tar.gz echo Setting up directories to extract PA Server into mkdir PAServer mkdir PAServer/21.0 tar xvf LinuxPAServer21.0.tar.gz -C PAServer/21.0 –strip-components=1 rm LinuxPAServer21.0.tar.gz echo #!/bin/bash >pa21.sh echo ~/PAServer/21.0/paserver >>pa21.sh chmod +x pa21.sh echo ———————————– echo To launch PAServer type ~/pa21.sh echo ———————————– ~/pa21.sh 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 #!/bin/bash echo Updating the local package directory sudo apt update echo Upgrade any outdated pacakges sudo apt full–upgrade –y echo Intall new packages necessary for Delphi sudo apt install joe wget p7zip–full curl openssh–server build–essential zlib1g–dev libcurl4–gnutls–dev libncurses5 xorg libgl1–mesa–dev libosmesa–dev libgtk–3–bin –y echo Clean–up unused packages sudo apt autoremove –y cd ~ echo Downloading LinuxPAServer for Sydney 10.4 (21.0) Update 1 wget https://altd.embarcadero.com/releases/studio/21.0/1/PAServer/LinuxPAServer21.0.tar.gz echo Setting up directories to extract PA Server into mkdir PAServer mkdir PAServer/21.0 tar xvf LinuxPAServer21.0.tar.gz –C PAServer/21.0 —strip–components=1 rm LinuxPAServer21.0.tar.gz echo #!/bin/bash >pa21.sh echo ~/PAServer/21.0/paserver >>pa21.sh chmod +x pa21.sh echo —————————————————– echo To launch PAServer type ~/pa21.sh echo —————————————————– ~/pa21.sh Install FMXLinux from GetIt Run the broadwayd server – You should already have paserver running (the script above launched it), so you will probably want a new Ubuntu terminal window where you can launch broadwayd. I like using the new Windows Terminal since it makes it easy to open multiple tabs, and WSL integrates with it nicely. Import Linux SDK in Delphi IDE – Tools > Options > Deployment > SDK Manager – The IP address for the PAServer instance is localhost / […]

Read More

Learn How Easy It Is To Implement Unit Testing In Your Delphi Windows Apps

In this video, you will learn how to implement a simple “Unit Testing” on your Application. With this simple approach, you can check if the result is matching your expectations,  “Assert” values inside routines, and interact with GUI and non-GUI elements; using a simple loop you can generate several “users’ inputs”, to avoid any future problems on your code simulating all possible scenarios. Using this native tool, you will save a lot of time that was being wasted on simulating a user on your application, increasing the time you spend coding, providing better use of time on your daily. To implement it you just need to add a new project “Unit Testing” on you group project and map all the elements you want to test, after that just write functions that call these elements inserting values and performing operations, instead of compiling it and insert values manually, lets the code do it for you. Check this out!

Read More

Control And Communicate With Arduino Device In This Innovative Software Built In Delphi

Mitov Software is specialized in the development of high-performance software and Data Flow solutions for Delphi and C++Builder, VCL, and FireMonkey involving:  Video Processing  Audio Processing  Digital Signal Processing  Real-Time Data Acquisition  Communications  Process Control  Computer Vision  Artificial Intelligence  Data Visualization  Visual Instrumentation  Parallel and Grid Computing  Hardware Control In this webinar, you can find out how to utilize Mitov Softwares and Arduino controlling/communication with Delphi. Furthermore, you can learn how to program your Arduino boards with a visual programming environment called Visuino. Visuino is the latest innovative software from Mitov Software. Currently, it supports the official Arduino boards, Raspberry Pi, Teensy, Femto IO, ESP8266, ESP32, Controllino, Goldilocks Analogue, FreeSoC2, chipKIT, micro:bit, Maple Mini, and a number of Arduino clones Features of the Visuino: Drag and drop ready to use components for controlling common Arduino sensors and modules Easy to use multichannel serial communication Automatic configuration of the pins of all standard Arduino boards Built-in Scope, and instrumentation panel for visualization of the received data from the sensors. Be sure to watch the entire session where you can find out how Arduino boards are used in many places and learn more Mitov Software here!

Read More