With The Case Of  Release The Power OF  Visual C++ !   Home Products | Purchase Support | Downloads  
View in English
View in Japanese
View in
View in Franšais
View in Italiano
View in 中文(繁體)
Download Evaluation
Pricing & Purchase?
E-XD++Visual C++/ MFC Products
Features Tour 
Electronic Form Solution
Visualization & HMI Solution
Power system HMI Solution
CAD Drawing and Printing Solution

Bar code labeling Solution
Workflow Solution

Coal industry HMI Solution
Instrumentation Gauge Solution

Report Printing Solution
Graphical modeling Solution
GIS mapping solution

Visio graphics solution
Industrial control SCADA &HMI Solution
BPM business process Solution

Industrial monitoring Solution
Flowchart and diagramming Solution
Organization Diagram Solution

Graphic editor Source Code
UML drawing editor Source Code
Map Diagramming Solution

Architectural Graphic Drawing Solution
Request Evaluation
VX++ Cross-Platform C/C++
ActiveX COM Products
Technical Support
  General Q & A
Discussion Board
Contact Us


Get Ready to Unleash the Power of UCanCode .NET

Indusoft - like HMI Software, SCADA System, OPC, Web Studio, Web SCADA, VC++ Source Code 2023


Product Tour
E-XD++ Workflow Component product walkthrough

Applications built on E-XD++ Workflow Component

Product feature comparison

Powerful, flexible, and easy to use Diagram Components.
Powerful and flexible enough to create diagrams exactly the way you want them to appear. So easy to use that you will be able to prototype your application in just a few minutes.

Feature rich.
With features such as automatic layout, multiple layers, collapsible sub-graphs, snap-to connection points, XML, SVG, and more, E-XD++ Have the power and flexibility you need to create sophisticated diagrams, quickly and easily. Events such as click, double-click, hover, select, rubber-band select, copy, delete, resize and move are supported. Operations such as drag-and-drop, unlimited undo/redo, and clipboard operations are common and complex, and are expected by today's sophisticated users. it full supports importing ArcGis, SVG and DXF File format.

Performance and Scalability.
UCanCode E-XD++ Capable of handling many thousands of nodes and edges, up to hundreds of thousands depending upon the complexity of the nodes you wish to draw and the operations you wish to allow. Our graphical classes are extremely lightweight objects enabling outstanding performance.

Save Time and Money and gain Reliability.
A diagram is worth 1,000 words, and E-XD++ is shipped with more than 500,000 lines of well designed and well tested code! It is used by hundreds of the world's most quality conscious companies. It will saves you thousands of hours of complex coding and years of maintenance.


lthough the PLC has a Level 1 HMI with all its screens, the Level 2 for this system typically has a separate PC dedicated to running just the Level 2 for calculating those temperatures and the most efficient use of fuel for achieving the desired output temperatures with minimal fuel and minimal scaling.

It's not unusual for customers to request the two HMIs to run on the same computer terminal, and we often create a button on the Level 1 HMI capable of launching the Level 2 HMI. In rare occasions some parts of the Level 2 HMI (such as the simulated isotherm image) are requested to be embedded into the Level 1 screens; but recently, we've seen an increase in the number of customers that are insisting that the Level 2 HMI be thoroughly embedded within the Level 1 HMI. We've been creating custom one-of implementations within the customer's Level 1 SCADA system, borrowing or creating custom one-of controls for this purpose, but after finishing two of these fully mixed systems, it seemed like a good time to investigate a new design philosophy for our HMI in general.

This is an on-going effort for us. The first step is to examine what's possible. Since the two most common SCADA systems for which our customers request this type of implementation has been WinCC and WonderWare's Indusoft, our research (and this article) will focus primarily on these two systems, but there are likely issues discussed here that will apply to designs of this type in any SCADA system. Likewise, any suggestions or feedback found here are likely to contribute to our final design.


A Human Machine Interface or HMI is the graphical interface for a plant to control some industrial equipment. The rest of the world would call this a Graphical User Interface or Gooey (GUI), but Human Machine Interface just sounds more -- down-to-business.
A Programmable Logic Controller or PLC is a specialized, hardened computer that reads industrial sensors and controls industrial equipment.
Level 1, 2, and such
Automation Levels are based on the ANSI/ISA Batch Standards (S88). Level 0 generally refers to MITL (Man In The Loop) controls. This is where some guy hand-cranks valves and pushes a start button on a pump, watches the glass level fill up, then pushes the stop button. Level 1 is where that guy's supervisor gets tired of paying someone to stand around all day watching the level on a tank, and buys a PLC to monitor an electronic level gauge, and programs the PLC to automatically send start and stop signals to the pump. Level 2 is where that supervisor's manager realizes that the water in the tank costs more between 6 AM and 5 PM, and decides it makes sense to fill the tank from half to full after 5 PM, but only fill it to half from a quarter between 6 AM and 5 PM.
A Supervisory Control and Data Acquisition system or SCADA system is a type of application development environment intended to make it easier for non-programmers to create an HMI.
WonderWare, Indusoft
WonderWare's Indusoft is a SCADA system. For more information on this system, check out Invensys' WonderWare Indusoft Product Page.
WinCC is a SCADA system. For more information on this system, check out Seimen's Simatic WinCC Product Page. Use caution here when looking for information on WinCC, because Seimens also has another, unrelated SCADA system with similar capabilities called WinCC Flexible. (If you Google information on WinCC, I suggest appending -Flex -Flexible filters at the end of your query.)
A setpoint is easiest to understand in terms of a home's thermostat. You don't typically turn your heater on and off; rather, you set the temperature to a specific setpoint, such as 72 degrees F, and the thermostat turns the heater on when it's too cold and turns it off when it's warm enough.
A Proportional-Integral-Derivative controller or PID works similar to the cruise control in some modern automobiles. It is a sophisticated output calculation (how much gas to feed the engine) that is based on your setpoint (the current mph or kph you desire), the rate of acceleration or deceleration, and how long it's taking to speed up or slow down.
Tags are special variables that are common to PLCs and SCADAs. External tags are control points that correspond to some physical piece of equipment such as a pressure indicator or a valve's percentage open. Some, such as the pressure indicator, are read-only. Some are writable only under certain circumstances; the valve's percentage open, for example, is only writable when the valve is in manual. If the PLC is controlling the valve via a PID controller, then a setpoint is the writable value, but the percentage open is controlled by the PID calculated output. Internal, or memory tags mimic external tags, but are not tied to a specific physical piece of equipment. Rather, memory tags are much more like a variable for the SCADA system, with their values set by the SCADA systems programming logic.
Microsoft's Interop Forms Toolkit
"Microsoft's Interop Forms Toolkit is a free Visual Studio add-in that simplifies the process of displaying .NET forms and controls in a Visual Basic 6 application." [Microsoft, 2010] This tool is primarily designed to allow customers to extend the lifetime of existing Visual Basic 6 applications and allow them to incorporate new VB.Net controls and forms into existing applications of that type. However, it has been successfully applied to other applications which make use of the same technologies.
Service-Oriented Architecture or SOA is a design philisophy for providing data on one computer to be consumed by one or several computers for purposes that may not be known at the time the data service was created. The easiest way to understand SOA services is in terms of Web pages. The HTML language returned from a HTTP request was initially only used for displaying web pages, but increasingly is used to provide raw data that can be displayed in various ways by a wide array of devices. Pod Casts, RSS feeds and Geo-spatial data from services like Google Maps are examples of SOA Data Services.
Virtual Memory System or VMS was the Cadillac of computer operating systems. However, it consumed too much gas and was quickly displaced by Windows NT when computers were switched to all electric. For more information on VMS, check out the Hewlett-Packard, OpenVMS Product Page.
Object-linking and embedding (OLE) for Process Control or OPC was originally created as a Windows device driver for PLCs. The current name is a misnomer in that more modern OPC Standards Specifications do not rely on Object-Linking and Embedding for implementation. In fact, there is evidence of some movement within the current standards that offer to open the drivers to non-Windows operating systems. For more information on OPC, check out the OPC Foundation's web site.

The HMIBuilder (Part of UCanCode HMI Solution) may be incorporated into an application to provide the end-user with the ability to create and edit HMI displays.
HMIBuilder Example:

Operation Interface <HMIPalyer>:

The leader in visualization component -- FULL VC++ Source Code Shipped!

XD++ Diagrammer Suite is the the world’s leading VC++ and .NET visualization component. Renowned for incredibly rich graphics, XD++ helps thousands developers build applications that offer unparalleled functionality. Outstanding productivity lowers project risk and reduces maintenance headaches. With 20 years of dedicated research and development, UCanCode leads the market for visualization technologies, providing outstanding customer support.

Buy all the source code: 

Official Version of the E-XD++ component library visual graphics solutions for enterprise versions of all of this Source Code, Click the button below to order from UCanCode:


1 UCanCode Advance E-XD++ CAD Drawing and Printing Solution Source Code Solution for C/C++, .NET V2023 is released!

2 UCanCode Advance E-XD++ HMI & SCADA Source Code Solution for C/C++, .NET V2023 is released!

3 UCanCode Advance E-XD++ GIS SVG Drawing and Printing Solution Source Code Solution for C/C++, .NET V2023 is released!

Contact UCanCode Software

To buy the source code or learn more about with:


Ask any questions by MSN: Yahoo:


Copyright ?1998-2023 UCanCode.Net Software , all rights reserved.
Other product and company names herein may be the trademarks of their respective owners.

Please direct your questions or comments to