Delphi Tips&Tricks News   Tips   .NET Software   VCL Software   Search   Contacts
Ultimate Pack - special offer!

Ultimate Pack  hot!
Image Editor  new!
Runtime Fusion
Form Designer
Object Inspector
Print Suite Pro
Commented Image
Delphi Toys
WinDowse
Delphi Bonus
TMS Scripter Studio
Form Designer VB
Form Designer .NET

...get more...
for Delphi.NET, C#, VB.NET
for Delphi VCL, BCB 3-6

WinAPI Online
Unix Manual Pages
MegaDetailed.NET
in3steps.com
cdtrrracks.com new!

Blogspot  greatis.blogspot.com

Registration OCX - Registry - Tips & Tricks - Greatis Delphi Pages

Before an OCX can be used, it must be registered with the System Registry. Suppose the OCX you want to use is called "test.ocx". To register this OCX use code from example below.
You can the same way unregister the OCX: all you have to do is to replace 'DllRegisterServer' by 'DllUnregisterServer'.
You should add some validation code: "Does the file exist", "Was the call to LoadLibrary successful?", ...
Some explanations:
An OCX is a special form of dll, so you can load it in memory with a call to the LoadLibrary API function. An OCX exports two functions to register and unregister the control. You then use GetProcAddress to obtain the address of these functions. You just have then to call the appropriate function. And that's it! You can explore the Registry (with regedit.exe) to verify that the OCX is registered.


var
  OCXHand: THandle;
begin
  OCXHand:=LoadLibrary('c:\windows\system\test.ocx');
  if (GetProcAddress(OCXHand,'DllRegisterServer')<>nil) then 
    ShowMessage('Error!');
  FreeLibrary(OCXHand);
end;
For more
Win32 programmer's reference

Download source