DG Kernel Documentation


Skip Navigation Links.
Start page
Quick Start
Search Page
Installation
Overview of the software
What is new
Licensing
Collapse ModelsModels
Collapse DG Kernel ComponentsDG Kernel Components
Collapse API ReferenceAPI Reference
Interface List
Vector Space
Collapse General GeometryGeneral Geometry
Collapse ModelModel
Collapse ViewView
Collapse General ComputingGeneral Computing
Collapse Samples and TutorialsSamples and Tutorials
Collapse GraphicsGraphics
Collapse Math ObjectsMath Objects
Collapse DeprecatedDeprecated
Redistribution
Model Viewer
Open Source
Support
Skip Navigation Links Search Documentation


Registration of DG Kernel Controls

DG Kernel components are COM servers, in many cases information about the controls has to be entered into the Windows Registry. This process is called registration.

In certain scenarios, DG Kernel components can be deployed without registration. See Registration-free deployment below.

Specific to DG Kernel Developer installations: A computer can have more than one version of full DG Kernel installation, but only one set of components can be registered at a time. Select the "Update Component Registration" Start menu option to activate a version of DG Kernel.

All versions are intended to be backward compatible, so an application will run with a newer version of DG Kernel without recompilation.

Self Registration

Versions of DG Kernel prior to v4.3 are using self-registration process. Most commonly this is done automatically by the installer package. From the installer package developer's point of view, it means that Register property of the installed .ocx file must be set to vsdrfCOMSelfReg or similar option.

Another way to self-register is to execute a command line similar to:

C:\Windows\SysWOW64\regsvr32.exe KerCADne.ocx         (32 bit applications)   or

C:\Windows\System32\regsvr32.exe KerCADne.ocx         (64 bit applicaptions)

Either way during the self-registration the .ocx component is loaded into memory and a function called DllRegisterServer() is executed.

The above process involves loading a large set of dlls, on which DG Kernel depends. So starting form v4.3 the recommended way to register components on the target machine is via .xreg files:

RealAll2.exe and parametric reg files

To register, say KerCADne.ocx control, it is recommended to execute command line

RegAll2.exe KerCADne.xreg

RegAll2.exe and KerCADne.xreg are provided in the Bin folder of DG Kernel installation directory. All three RegAll2.exe, KerCADne.xreg, and KerCADne.ocx are assumed to be installed in the same folder. The Register property on the file in the installer, if used, has to be vsdrfCOMDoNotRegister or similar

This way the component is not actually loaded. Instead, a small set of required information, contained in the *.xreg file is entered into the Registry directly, which is a faster and safer way of doing it.

If both .Net and native controls need to be installed it can be done with a single command:

RegAll2.exe KerCADne.xreg KerCADe.xreg

Use /u switch to unregister the control(s) during uninstallation:

RegAll2.exe /u KerCADne.xreg KerCADe.xreg

Registration-free deployment

Sometimes DG Kernel components can be used without registration using Reg-Free COM technology of Microsoft. With this method the application uses a manifest file, generated by Visual Studio or other method, located next to the application's executable file, which contains the information describing the DG Kernel component, instead of writing it into registry. See more details in MSDN: http://msdn.microsoft.com/en-us/magazine/cc188708.aspx

This approach assumes that DG Kernel component and all supporting files are installed into the same folder as the applications executable, or in a folder pointed to by the manifest. As DG Kernel redistributable is large, this method is not suitable for cases when the component is used by many executables located in different folders.

Because of the above consideration and some other reasons full DG Kernel installation (DG Kernel Developer) uses traditional registration

See also: Deployment Samples and Tutorials