HomeSign in to retrieve your license keys and installation information.
 

 

  .NET Controls     ActiveX Controls     DLL Controls     Order     Support     About Us  
 
 

OCX Installer

Overview | Documentation | C# | VB.NET | VB6 | C/C++ | Download

Registration-Free Activation is a handy mechanism that makes XCOPY and ClickOnce deployment possible, even when ActiveX controls are used. By adding a simple application manifest, your application can run without actually registering the ActiveX controls explicitly.

Unfortunately, Registration-Free Activation works on Windows XP and up only - UNTIL NOW!

On Windows 98, Windows ME, Windows 2000 (and even XP without service packs), you are on your own. In a perfect(?) world, we would all be using at least Windows XP SP2, but we aren't. As you know, ActiveX controls require registration in the Windows Registry in order for your applications to be able to use them. This introduces a slight "wrinkle" into XCOPY deployment, or even ClickOnce deployment. So, this leaves us with the following choices when trying to deploy our applications on older operating systems.

XCOPY Deployment

In order to use ActiveX controls, they have to be registered using REGSVR32.exe or a setup application has to be developed. While neither is overly difficult, it's just one more thing to do.

ClickOnce Deployment

ActiveX controls can't be automatically registered with ClickOnce. You have to add a bootstrap that runs an MSI installer. Again, just more administrative, tedious work. Or, again, register controls manually using REGSVR32.exe.

Windows 98, NT, ME, 2000, XP Alternative

We have developed a simple mechanism that lets you package all ActiveX controls with your application and deploy them using XCOPY or ClickOnce. Without ANY manual intervention, your ActiveX controls will be "magically" available to your application.

Actually, there is no magic. Some of you may have noticed that we do not use one of the many commercial installers for our own products. Since 1999/2000, we have been using our own, in-house setup application tool, which was a great benefit to us early on when we had to support 64-bit products (which the commercial installers didn't yet handle). We have become somewhat of "installer experts" and have been able to distill our knowledge into a simple ActiveX control distribution mechanism named OCX Installer.

With our new OCX Installer, your ActiveX controls will be copied to the Windows\System(32) directory, of course with version checking, an accurate share count is maintained (in case multiple applications use the same ActiveX control) and the control is registered. You can register as many controls as you need. You can even distribute additional files (again with version checking, share count if desired and optional registration).

The OCX Installer is very fast, too. Even though it checks whether all the files are in place every time your application runs, actual copying and registration only takes place if it is truly necessary. Otherwise, it adds no noticeable overhead whatsoever.

It won't replace a full-blown Setup application, but for those cases where ClickOnce or XCOPY deployment would be enough, the OCX Installer will bridge the gap for ActiveX controls.

C#

In a C# application, add calls to ProcessFile to add ActiveX controls. The perfect location would be the Main function of the first module invoked by your application.

static void Main() 
{
Softelvdm.AppOCXRegistration.ProcessFile(True, "MyApp", "MyCompany", _
".\SftTree_IX86_U_60.ocx", "%WinSys", True, False)
' additional calls to ProcessFile, one for each ActiveX control
Application.Run(new Form1()); }

This example installs SftTree/OCX 6.0 (our tree control) by copying it from the application directory into the C:\Windows\System32 directory (represented by %WinSys), using version checking and registering the control.

VB.NET

In a VB.NET application, add calls to ProcessFile to add ActiveX controls. The perfect location would be Sub Main of the first module invoked by your application.

Sub Main()
  Softelvdm.AppOCXRegistration.ProcessFile(True, "MyApp", "MyCompany", _
".\SftTree_IX86_U_60.ocx", "%WinSys", True, False)
' additional calls to ProcessFile, one for each ActiveX control
Application.Run(new Form1()); End Sub

This example installs SftTree/OCX 6.0 (our tree control) by copying it from the application directory into the C:\Windows\System32 directory (represented by %System32), using version checking and registering the control.

C/C++ (Unmanaged)

In a C or C++ application, add calls to OCXInstaller_ProcessFile to add ActiveX controls. The perfect location would be WinMain or the CWinApp::InitInstance function of the application.

OCXInstaller_ProcessFile(TRUE, "MyApp", "MyCompany",
     ".\\SftTree_IX86_U_60.ocx", 
     "%WinSys", TRUE, FALSE);

This example installs SftTree/OCX 6.0 (our tree control) by copying it from the application directory into the C:\Windows\System32 directory (represented by %WinSys), using version checking and registering the control.

VB6

In a Visual Basic 6.0 application, add calls to OCXInstaller_ProcessFile to add ActiveX controls. The perfect location would be the Main function of the first module invoked by your application.

Sub Main() 
  OCXInstaller_ProcessFile(True, "MyApp", "MyCompany",  _
App.Path & "\SftTree_IX86_U_60.ocx", _
"%WinSys", True, False)
' additional calls to ProcessFile, one for each ActiveX control
... invoke the first form ... End Sub

This example installs SftTree/OCX 6.0 (our tree control) by copying it from the application directory into the C:\Windows\System32 directory (represented by %WinSys), using version checking and registering the control.

Other Languages

The OCX Installer is a simple DLL that encapsulated all the functionality needed, so it can be used with almost any language, as long as it can invoke functions in a DLL.

OCX Installer Advantage

Our (free) OCX Installer can be used with XCOPY and ClickOnce deployment on all operating systems from Windows 98 through, and including, Windows XP and Windows Server 2003.

It is not suitable for Windows Vista or Windows Server 2008, where you should use Registration-Free Activation anyway to avoid problems with User Account Control. OCX Installer can coexist with Registration-Free Activation, so the same application can support all operating systems (from Windows 98 though Windows Server 2008). The OCX Installer would take care of ActiveX controls on Windows 98 through Windows XP, Registration-Free Activation would handle Windows Vista and up.

Our OCX Installer is easily included into a .NET VB, C# application and C/C++, VB6 and many others (see OCX Installer Documentation. The OCX Installer eliminates any "manual" registration of ActiveX controls and makes ActiveX controls as easily distributable as a simple DLL.

The OCX Installer can not only be used for initial deployment, it also recognizes and installs updates that have been provided (again using XCOPY or ClickOnce deployment).

With OCX Installer, you can even run applications with ActiveX controls from USB Thumb drives, storage cards, etc.

Every time your application starts, OCX Installer quickly checks if all the files are installed. If, for some reason they are missing, they are simply reinstalled, making your application just a bit more robust.

The OCX Installer works with virtually all ActiveX controls, not just our own products. The OCX Installer does not use any obscure or undocumented Windows API or hooks, so there are no surprises. As long as an ActiveX control follows commonly accepted standards, it should work without any problems.

OCX Installer Limitations

There are just a few limitations, which will affect very few applications or ActiveX controls.

  • OCX Installer cannot replace/update files that are in use. Usually, closing all applications before running your application (that uses OCX Installer) will correct this.

  • OCX Installer is not a substitute for a setup application (for more complex installations).

  • OCX Installer is a free product and does not include free product support. However, licensed users of our current products with an active support subscription will receive free support for OCX Installer (limited to bug assessment and bug fixes).

OCX Installer Future

We have a few possible enhancements in mind for the future. Let us know what you might want/need. Only your feedback will make additional enhancements available!

Possible enhancements (let us know if you could use any of these):

  • Program group entries in the Windows Start menu

  • Font installation

  • Replacement of in-use files with controlled system reboot

  • Controlled Uninstall (using Control Panel, Add/Remove Programs)

  • ? (let us know, send an email to support@softelvdm.com)

 

Home

 

.NET Controls

SftTree/NET 2.0

SftTabs/NET 6.0

 

ActiveX Controls

SftTree/OCX 6.0

SftTabs/OCX 6.0

SftBox/OCX 4.5

SftButton/OCX 2.5

SftDirectory 2.5

SftMask/OCX 6.5

SftOptions 1.0

SftPrintPreview/OCX 1.0

OCXInstaller

 

DLL Controls

SftTree/DLL 6.0

SftTabs/DLL 5.0

SftPrintPreview/DLL 1.0

 

Customer Info

My Account Login Required

License Keys Login Required

Download Products Login Required

Order Now

About Ordering

Frequently Asked Questions