WebKitX ActiveX wraps Chromium Embedded Framework (CEF3) for use with OLE/COM languages. Chromium Embedded Framework encapsulates WebKit Blink HTML5 Renderer and Google V8 JavaScript Engine. This is a production-grade stable component for commercial use that will truly add HTML5 features in your Desktop and Terminal Applications.

JavaScriptX ActiveX wraps Google V8 JavaScript Engine for use with OLE/COM languages. The ActiveX is a binary replacement of Microsoft Script Control for the JavaScript scripting language. V8 compiles JavaScript directly to native machine code and the ActiveX provides binding between COM objects and JavaScript. This is a production-grade stable component for commercial use for providing modern scripting to your Desktop and Terminal Applications.

 

Compatibility

 

Downloads


Subscribe to Version Upgrade Push Notifications

Stable production-grade WebKitX version 2.x

Product Details Released Architectures CEF3 / V8 Download Installation Package
WebKitX_CEF3_ActiveX_x86_v2.2.0.12116.exe
  • For 32-bit Application Development
  • Windows 7, 8, 10 (32-bit or 64-bit)
  • Terminal Ready: Windows 7 POS Edition
  • Blink HTML5 Rendering Engine
  • WebGL v1, v2
  • 4 GB RAM Recommended
  • Peper Flash Player v31.0.0.122 (32-bit)
  • 75 MB Redistributable
  • Commercial Use License
  • Bounty Support
  • 30-day Evaluation
26 May 2020 x86 & x64
32-bit OCX

VC++ 2017
Redist
Chromium Version: 71
Git Branch: 3578.1860
Released: Dec 2018
Download
MD5: 8c119984f6be6f46c53ed3cfbd43ac8d
SHA-1: fb89d94dc5381fe9b8d169f5e79269bfd8323de1
WebKitX_CEF3_ActiveX_x64_v2.2.0.12116.exe
  • For 64-bit Application Development
  • Windows 7, 8, 10 (64-bit)
  • Terminal Ready: Windows 7 POS Edition
  • Blink HTML5 Rendering Engine
  • WebGL v1, v2
  • 8 GB RAM Recommended
  • Peper Flash Player v31.0.0.122 (64-bit)
  • 81 MB Redistributable
  • Commercial Use License
  • Bounty Support
  • 30-day Evaluation
26 May 2020 x64
64-bit OCX

VC++ 2017
Redist
Chromium Version: 71
Git Branch: 3578.1860
Released: Dec 2018
Download
MD5: ccd344be3b3c8be794b9d2821e2df0ec
SHA-1: d2664973d54196d957ef4aa9f4cab188327f7e37
WebKitX_CEF3_ActiveX_WinXP_x86_v2.2.0.12116.exe
  • For 32-bit Application Development
  • Windows XP x86 SP3 (32-bit)
  • Windows Vista x86 (32-bit)
  • Terminal Ready: Windows XP POS & Embedded Editions
  • Tested with unofficial SP4 (Major Geeks)
  • Tested with XP POS Windows Updates up to 12/2018
  • WebKit HTML5 Rendering Engine
  • With WebGL 1.0 Support
  • 2 GB RAM Recommended
  • Peper Flash Player v29.0.0.113 (32-bit)
  • 55 MB Redistributable
  • Commercial Use License
  • Bounty Support (Limited)
  • 30-day Evaluation
26 May 2020 x86
32-bit OCX

VC++ 2015
Redist
Chromium Version: 49
Git Branch: 2623.1401
Released: May 2016
Download
MD5: 2099cee249b9b7fde12d33f0573bd574
SHA-1: 18e8f06ce7f6177515e2bf20cd41dad0b38c44ad

Stable production-grade JavaScriptX version 1.x

Product Details Released Architectures CEF3 / V8 Download Installation Package
JavaScriptX_ActiveX_x86_v1.1.0.611.exe
  • For 32-bit Application Development
  • Windows 7, 8, 10 (32-bit or 64-bit)
  • Terminal Ready: Windows 7 POS Edition
  • 1 GB RAM Recommended
  • 17 MB Redistributable
  • Commercial Use License
  • Bounty Support
16 Mar 2020 x86 & x64
32-bit OCX

VC++ 2017
Redist
V8 Engine: 7.3.492.27
Git Branch: v8-release-73
Released: Feb 2019
Download
MD5: cef062ee7a5476ee3871214f85b78a8a
SHA-1: 172d55130c41c81c59d1279febf6ddae0ce03867

Announcing WebKitX version 4.x Beta with Chromium version 80. Please send your beta-testing feedback to info@mobilefx.com.

Product Details Released Architectures CEF3 / V8 Download Installation Package
WebKitX_CEF3_ActiveX_x86_v4.0.0.12115.exe
  • BETA - NOT FOR PRODUCTION
  • For 32-bit Application Development
  • Windows 7, 8, 10 (32-bit or 64-bit)
  • Terminal Ready: Windows 7 POS Edition
  • Blink HTML5 Rendering Engine
  • WebGL v1, v2
  • H.264 / AAC Video
  • WebRTC
  • With async/await Support
  • Peper Flash Player v32.0.0.101 (32-bit)
  • 4 GB RAM Recommended
  • 175 MB Redistributable
  • Commercial Use License
  • Bounty Support
  • 30-day Evaluation
26 May 2020 x86 & x64
32-bit OCX

VC++ 2017
Redist
Chromium Version: 80
Git Branch: 3987.149
Released: Mar 2020
Download
MD5: 6413c5a0015ef4d81a0841679eb7e549
SHA-1: fba664b4433a4c10c45b7374abcb1769e7479d04
WebKitX_CEF3_ActiveX_x64_v4.0.0.12115.exe
  • BETA - NOT FOR PRODUCTION
  • For 64-bit Application Development
  • Windows 7, 8, 10 (64-bit)
  • Terminal Ready: Windows 7 POS Edition
  • Blink HTML5 Rendering Engine
  • WebGL v1, v2
  • H.264 / AAC Video
  • WebRTC
  • With async/await Support
  • 8 GB RAM Recommended
  • Peper Flash Player v32.0.0.101 (64-bit)
  • 210 MB Redistributable
  • Commercial Use License
  • Bounty Support
  • 30-day Evaluation
26 May 2020 x64
64-bit OCX

VC++ 2017
Redist
Chromium Version: 80
Git Branch: 3987.149
Released: Mar 2020
Download
MD5: 2dacb299da4af78381e2bcaff6e0e44d
SHA-1: 8d0ac77d49b6f1e0c4177a4d710c26f01d87caef
 

Release Notes

May 2020

  • New Feature Added DelayedBrowserCreation property that delays browser creation until first paint of the control (default = true).
  • New Feature Added DisableGDIPlus property that disables early GDI+ initialization. GDI+ is used for screenshot capture and version text rendering.
  • Hot Fix Fixed Reload method signature IDL causing certain IDEs to crash.
  • Hot Fix Fixed 64-bit installation package.
  • Hot Fix Changed default installation folder to avoid accidental overwrite of previous versions.

Apr 2020

  • BETA & NFR Product is Beta and Not-For-Resale (NFR) license agreement terms apply. Do not use it in production.
  • Major Version Change Introducing version 4.x with Chromium version 80 and tons of new JavaScript ES and HTML5 capabilities.
  • Hot Fix Fixed GPU bug causing Swiftshader as default renderer. Hardware Acceleration is now restored.
  • Hot Fix Fixed samples to reflect version 4.x for Visual Basic 6.0, C++, Power Builder, Excel and C#.
  • New Feature Added Destroy() method that terminates CEF sub-processes on demand.
  • New Feature Added H.264 video and ACC audio decoding.
  • New Feature Added HMI_URL and HMI_VALUE properties for Rockwell FactoryTalk Industrial Automation Software.
  • New Feature Added PlayHLS() and PauseHLS() for HTTP Live Stream video support.
  • New Feature Added support for Widevine that enables playback of encrypted streams such as NETFLIX.
  • New Feature Added Web Real Time Communications (WebRTC) features.
  • New Feature Improved control creation: control is created when OLE container site is set vs. on first paint.
  • New Feature Improved terminal licensing and license reporting in design-time.
  • New Feature Introducing license file feature for Standard, Professional and Enterprise licensing.
  • New Feature License is embedded in executable at compile-time. No more activate calls in source code.
  • New Feature Upgraded to latest CEF and Chromium (March 2020 / branch 3987.144).
  • New Sample New H.264 / ACC video sample.
  • New Sample New HTTP Live Stream sample.
  • New Sample New Human Machine Interface (HMI) Samples.
  • New Sample New Real-Time Web Communications (WebRTC) sample.
  • New Sample New WebASM Unity Game Engine Sample.

May 2020

  • New Feature Added DelayedBrowserCreation property that delays browser creation until first paint of the control (default = true).
  • New Feature Added DisableGDIPlus property that disables early GDI+ initialization. GDI+ is used for screenshot capture and version text rendering.
  • Hot Fix Fixed Reload method signature IDL causing certain IDEs to crash.

Apr 2020

  • New Feature License is embedded in executable at compile-time. No need for activate calls in source code any more.
  • New Feature Introducing license file feature for Standard, Professional and Enterprise licensing.
  • New Feature Improved terminal licensing and license reporting.
  • New Feature Improved control creation: control is created when OLE container site is set vs. on first paint.
  • New Feature Added Destroy() method that terminates CEF sub-processes on demand.
  • Hot Fix Fixed Licensing Bug.

Mar 2020

  • Hot Fix Fixed GPU bug causing Swiftshader as default renderer. Hardware Acceleration is now restored.
  • New License Agreement New License Agreement for purchases after 01/03/2020 or existing customers upgrading to March release.
  • Hot Fix Fixed evaluation expiration bug causing licensed product to appear as evaluation-expired.
  • Hot Fix Improved hypervisor and virtualization terminal detection.
  • Hot Fix Improved GetPerformanceCountners method and added detailed documentation for measuring navigation performance.
  • New Feature Added WebKitX.SaveScreenshot() method for capturing WebKitX client bitmap as BMP/PNG/JPEG image on disk.
  • New Feature Added WebKitX.CopyToClipboard() method for copying WebKitX client bitmap to clipboard as Bitmap image or Base64 encoded PNG.
  • New Feature Added IHTML5InputElement.Value read/write variant property for accessing INPUT element values.
  • New Feature Added License File support for off-line activation of multiple Workstations and Terminals.
  • New Sample Added RAD Studio Guide for VCL Application Development with WebKitX.
  • New Sample Added Micrsoft Excel Guide demonstrating handling HTML events, Excel events and copying values between HTML and Excel.

Mar 2020

  • Hot Fix Improved stability.
  • Hot Fix Fixed Run() method bug causing crashes when used with more than 1 parameters.
  • Hot Fix Fixed ScriptControl.Error object to support JavaScript errors with source line and column.
  • Hot Fix Fixed Google V8 to VARIANT minor bugs and added support for Infinity.
  • Hot Fix Improved COM Reference Counting and speed.
  • Hot Fix Improved exception handling from JavaScript to COM.
  • New Feature Added vanilla implementation for Modules and Procedures.
  • New Sample Released documentation at https://www.webkitx.com/doc/jx/About.html.

More Release Notes ...

 

Documentation

 

Getting Started

Installation Guide
Step-by-step installation guide to properly install WebKitX on your Developer Workstation.

Read More

Loading Sequence
Discover WebKitX initialization sequence and load your first URL.

Read More

Plugins
Discover WebKitX Plugins and use them in your apps: PDF Viewer, Flash Player and Chrome Developer Tools.

Read More

High DPI Support
Enable high dpi support for both your executable and CEF3.

Read More

License Activation
Instructions to activate your Commercial License and register your Workstation.

Read More

Distribution
Instructions to distribute WebKitX binaries with your applications.

Read More
 

Integration Guides

Visual Basic 6.0 Guide
Guide for loading and using WebKitX in Visual Basic 6.0 programs.

Read More

C# Guide
Guide for developing 32-bit and 64-bit WebKitX applications with C#.

Read More

Visual C++ Guide
Step-by-step guide for using WebKitX in C++ MFC applications.

Read More

RAD Studio Rio Guide
Step-by-step guide for using WebKitX in RAD Studio Rio VCL projects.

Read More

dBase Guide
Step-by-step guide for using WebKitX with dBase.

Read More

Power Builder Guide
Step-by-step guide for using WebKitX with PowerBuilder 2019.

Read More

ForPro 9 Guide
Guide for adding WebKitX in FoxPro forms and navigating to a URL.

Read More

Legacy ForPro Guide
Guide for adding WebKitX in Legacy FoxPro forms and navigating to a URL.

Read More

FactoryTalk Guide
Step-by-step guide for using WebKitX with Rockwell FactoryTalk Automation software.

Read More

Microsoft Office VBA Guide
Step-by-step guide for using WebKitX with Office 64-bit VBA applications.

Read More

Microsoft Excel Guide
Step-by-step guide for using WebKitX in Excel and transfer values and events.

Read More
 

Best Practices

Accessing HTML5 DOM
Reading and writing HTML5 markup, element attributes and CSS3 styles.

Read More

Calling JavaScript
Call JavaScript functions with arguments from your native program.

Read More

Handling DOM Events
Handle DOM events in your program using COM event handling.

Read More

Expose COM objects to JavaScript
Expose and invoke your OLE/COM objects in JavaScript.

Read More

HTML5 Editing
Edit HTML5 code in a WYSIWYG manner with WebKitX.

Read More

CORS & CSP Filtering
Bypass CORS and CSP policies with advanced WebKitX content filtering.

Read More
 

Multimedia

Available in version 4.x only.

H.264 / ACC codec
Proprietary codecs for modern audiovisual applications.

Read More

Widevine
Widevine-enabled secure premium content protection support.

Read More

HTTP Live Stream
HTTP Live Stream made easy with hls.js library wrapping for COM use.

Read More
 

Highlights

Accessing HTML5 DOM Programmatically

In an attempt to provide HTML5 DOM access and manipulation programmatically in similar way like Microsoft Web Browser Control, WebKitX offers limited access and DOM manipulation through COM Wrappers. A COM Wrapper wraps native WebKit Blink HTML5 Elements and exposes them to the OLE/COM environment. WebKitX HTML5 COM Wrappers are volatile Just-In-Time (JIT) COM objects, meaning that WebKitX does not reference-count the provided COM object. Internally each COM Wrapper has a CSS3 Selector to the underlying native object and the wrapper is valid for as long as the CSS3 Selector remains valid.

Read More

Calling JavaScript and JavaScript Callbacks

The simplest way to call a JavaScript function in WebKitX is WebKitX.CallByName(Name, Variant) method. You can pass to JavaScript function arbitrary arguments using an OLE/COM Variant, and receive the function's result value, as an OLE/COM Variant too. Execution of CallByName is IPC-synchronous and this method is an elegant alternative to WebKitX.Eval() as you can pass back-and-forth your variables without stringifying them.

Each frame in a browser window has its own V8 context. The context defines the scope for all variables, objects and functions defined in that frame. WebKitX allows you to register a JavaScript callback in a V8 context using window.register(name, callback, this) method. The first argument is the string name of the function, the second is the function callback and the 3rd optional parameter is the execution context. If the 3rd parameter is not defined then the global object is assumed.

Read More

Adding native Objects to JavaScript

This technology allows you to use headless COM objects (non-controls) from JavaScript. Any simple in-process or out-of-process apartment threaded COM object with scalar properties and/or methods with scalar arguments and scalar return value can be wrapped into an V8 object and exposed through a global identifier (and window dot identifier) to the V8 JavaScript context of the main frame.

Read More

Handling DOM Events

HTML5 DOM Events are generated by WebKit Blink Engine and are copied into an immutable format before they are transmitted from CEFXClient process to WebKitX ActiveX. Once WebKitX ActiveX receives an event notification through IPC, it fires a COM Event with the copied data of HTML DOM event. Thus, CEFXClient process does not block waiting for your client code to handle the event. WebKitX DOM Events are Immutable, meaning that you can only read event data but you cannot cancel events, stop them from bubbling or prevent default behavior.

WebKitX as of version 1.5.11.2591 supports synchronous DOM to COM events by implementing CefMessageRouter circuit. Events generated from WebKit Blink Engine are serialized and passed from Rendering to Browser process, which transmits them to the ActiveX. The browser process waits for the ActiveX to handle the event, where you can also cancel event bubble or prevent event's default behavior.

Read More

Firing custom DOM Events

WebKitX DispatchEvent() method allows you to fire DOM events directly into JavaScript and handle those events by JavaScript event handlers. You can pass the target selector that will receive the event, the event name, event initialization parameters (bubbling, cancelable, composed) and an OLE/COM Variant that will be converted into a V8 JavaScript object and added in the details field of the Event object. Event execution can be both synchronous and asynchronous in terms of IPC tunneling, and it is always synchronous in terms of DOM.

Read More

Chrome DevTools Support

WebKitX has built-in support for Chrome DevTools and wraps DevTools Protocol which allows for developers to instrument, inspect, debug and profile HTML5 and JavaScript. In Chrome DevTools Protocol instrumentation is divided into a number of domains (DOM, Debugger, Network etc.) and each domain defines a number of commands and events. You can execute DevTools commands with ExecDevToolsCommand and handle the generated events in OnDevToolsWebSocket event.  Both commands and events are serialized JSON objects of a fixed structure.

Read More
 

Licensing

Please read carefully our licensing documents for Standard Licensing, Professional Licensing and Enterprise Licensing and do not hesitate to contact us if you have questions or if you need to negotiate special closures:

Perpetual Non-Commercial Student License for Project-Based Desktop Application Development

A single Non-Commercial Student License allows Students or Faculty to develop a single Windows Desktop Application linked with mobileFX ActiveX controls and distribute them freely to an unlimited number of fellow students or faculty. Students or Faculty are required to obtain one license per Developer Workstation and per Application developed. The license is perpetual and we offer free upgrades for the software's minor versions (eg. from v2.0 to 2.x). We offer 20% discount for upgrades for the software's major version (eg. from v2.x to 3.x). Major version discount is eligible for customers that upgrade to immediate next release within the release's fiscal year. Non-Commercial Student License explicitly excludes non-desktop application development such as Terminal, Virtual and Embedded applications.

You can apply for Non-Commercial Student License by email at info@mobilefx.com.

Product Bundle Compatibility Price
WebKitX ActiveX x86 v2.x (32-bit ActiveX) Windows 7, 8, 10 £ 99
WebKitX ActiveX x64 v2.x (64-bit ActiveX) Windows 7, 8, 10 £ 199
JavaScriptX ActiveX x86 v1.x (32-bit ActiveX) Windows 7, 8, 10 £ 49

Perpetual Commercial License for Start-up for Desktop Application Development

A single Commercial License for Start-up allows Independent Software Vendors (ISV) to develop an unlimited number of Windows Desktop Applications linked with mobileFX ActiveX controls and distribute them freely to an unlimited number of their customers. ISVs are required to obtain one license per Developer Workstation. The license is perpetual and we offer free upgrades for the software's minor versions (eg. from v2.0 to 2.x). We offer 20% discount for upgrades for the software's major version (eg. from v2.x to 3.x). Major version discount is eligible for customers that upgrade to immediate next release within the release's fiscal year. Commercial License explicitly excludes non-desktop application development such as Terminal, Virtual and Embedded applications.

An eligible start-up must be an SME operating for a maximum of six (6) years, have public balance sheet and profits under 100K USD.
You can apply for Commercial License for Start-up by email at info@mobilefx.com.

Product Bundle Compatibility Price
WebKitX ActiveX x86 v2.x (32-bit ActiveX) Windows 7, 8, 10 £ 199
WebKitX ActiveX x64 v2.x (64-bit ActiveX) Windows 7, 8, 10 £ 499
JavaScriptX ActiveX x86 v1.x (32-bit ActiveX) Windows 7, 8, 10 £ 59

Perpetual Commercial License for Desktop Application Development

A single Commercial License allows Independent Software Vendors (ISV) to develop an unlimited number of Windows Desktop Applications linked with mobileFX ActiveX controls and distribute them freely to an unlimited number of their customers. ISVs are required to obtain one license per Developer Workstation. The license is perpetual and we offer free upgrades for the software's minor versions (eg. from v2.0 to 2.x). We offer 20% discount for upgrades for the software's major version (eg. from v2.x to 3.x). Major version discount is eligible for customers that upgrade to immediate next release within the release's fiscal year. Commercial License explicitly excludes non-desktop application development such as Terminal, Virtual and Embedded applications.

Product Bundle Compatibility Price Buy Now
WebKitX ActiveX x86 v2.x (32-bit ActiveX) Windows 7, 8, 10 £ 599
WebKitX ActiveX x64 v2.x (64-bit ActiveX) Windows 7, 8, 10 £ 999
WebKitX ActiveX x86 v2.x (32-bit ActiveX for Windows XP) Windows XP, Vista £ 999
JavaScriptX ActiveX x86 v1.x (32-bit ActiveX) Windows 7, 8, 10 £ 99

Subscription-based Commercial License for Terminal Software Development

Complementary to Perpetual Commercial License for Desktop Application Development is subscription-based Terminal Licensing. Terminal Licensing applies to Independent Software Vendors (ISV), Managed Software Providers (MSP), IT Solution Providers (ITSP), Systems Integrators (SI) and it is required if-and-only-if an application linked with mobileFX ActiveX products is deployed on Windows Embedded operating systems, or deployed through Terminal Services, or Virtual Appliances. Terminal Licensing is subscription-based, has validity of one fiscal year and must be obtained per terminal on top of commercial licenses. Terminal license pricing is at 10 GBP per Terminal per fiscal year. Terminal Licensing optionally can be offered along with SLA support and Escrow-based source-code branching at additional cost.

You can apply for Terminal License by email at info@mobilefx.com.

Perpetual Device License for Hardware Development

Complementary to Perpetual Commercial License for Desktop Application Development is subscription-based Device Licensing. Device Licensing applies to Independent Hardware Vendors (IHV) and it is required if-and-only-if a software linked with mobileFX ActiveX products is distributed as part of, or embedded in, a Hardware Product, such as but not limited to IoT Devices and Gateways, POS Devices, Self Service Terminals, Vending Machines, Digital Signage Kiosks, Automation Devices, ATM Devices, etc. Device Licensing is volume-based and as low as 10 GBP per device per warranty year for volumes under 1,000 items and 6 GBP per device per warranty year for volumes over 1000 items. For example, if you sell devices in EU with 2 years warranty, your CAPEX cost for 1 device would be 20 GBP, Optionally can be offered along with SLA support and Escrow-based source-code branching at additional cost.

You can apply for Device License by email at info@mobilefx.com.

 

Support Services

If you desperately need a new feature implemented in our ActiveX controls or immediately need a hotfix and can't wait until next release, you can contact us at info@mobilefx.com and negotiate with us a price, for which we will stop what we do and take care of what you need! The service is called a Bounty and applies only to existing Customers; for any edition of the ActiveX but only for its latest version (we do not branch per customer).

Just send us an email with what you need and our Account Manager will pass your request to our Tech Lead for Effort Estimation along with Technical Specs of the works to be done. Effort Estimation is in man hours and it is different from Duration. For example, to add a feature it might take our experts 8 hours to implement, but because we work on Sprints we might need a duration of one week to deliver.

The catch is that you participate in the process, being the primary Beta Tester! This phase is called User Acceptance Testing (UAT) and during this period you receive code-locked prototype revisions and provide us with valuable feedback, such as UAT observations and Defects. Once UAT is completed and you are satisfied with the result, you release us from the Bounty and we provide you with an Unlock Code as a token of our appreciation.

For corporate customers and long projects we collaborate using Jira.

Service Duration or Effort Price
Support Voucher / Bounty 2 hours (minimum) £ 100