Solved

OLE Container in a DLL

Posted on 1997-12-16
4
604 Views
Last Modified: 2013-11-25
I'm developing a DLL that simply shows a frame window containing a RemoteData Control and a DBGrid Control. I have initialized my app with AfxEnableOLEContainer and my app runs fine, but the RemoteData and DBGrid controls do not appear. The debug output message is the following:

CoCreateInstance of OLE control {00028C00-0000-0000-0000-000000000046} failed.
>>> Result code: 0x800401f0
>>> Is the control is properly registered?
Warning: CreateDlgControls failed during form view init.
Detected memory leaks!
Dumping objects ->
occmgr.cpp(646) : {241} normal block at 0x00412580, 28 bytes long.

The line 646 of occmgr.cpp is the following:

pBindings = new CDataBoundProperty(pBindings, dispid, ctlid);

What's the problem?

Thank you in advance.
0
Comment
Question by:opacios
  • 2
  • 2
4 Comments
 
LVL 7

Accepted Solution

by:
galkin earned 100 total points
ID: 1312385
The problem is that control you aretrying to create is not properly registered on your computer. Use regsvr32.exe utility founf in system directory to register control. To do this launch regsvr32.exe with command line as full path to control file. Yuo must get message box that your control registration has been succeeded. You can also use ActiveX controls test container to rister these controls by invoking "Register control" menu and browsing to DBGrid control DBGRID32.OCX if your are working in 32 bit platform or DBGRID16.OCX if you are working in 26 bit platform file.
0
 

Author Comment

by:opacios
ID: 1312386
Thanks for your fast answer.

I've registered the two controls, and the problem persists. I think that it's not the problem, because these controls work fine in an usual MFC application. The problem only appears when including the controls in a DLL.
0
 
LVL 7

Expert Comment

by:galkin
ID: 1312387
If contrls are properly registered be sure that you called AfxOleInit() and AfxEnableControlcontainer() in your application InitInstance function
0
 

Author Comment

by:opacios
ID: 1312388
Thanks for your answers.

I was calling AfxOleInit and AfxEnableControlContainer in the DLL application object InitInstance function, but they have to be called from the application that imports the DLL.
0

Featured Post

What Security Threats Are You Missing?

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

Introduction: The undo support, implementing a stack. Continuing from the eigth article about sudoku.   We need a mechanism to keep track of the digits entered so as to implement an undo mechanism.  This should be a ‘Last In First Out’ collec…
Whether you've completed a degree in computer sciences or you're a self-taught programmer, writing your first lines of code in the real world is always a challenge. Here are some of the most common pitfalls for new programmers.
This video will show you how to get GIT to work in Eclipse.   It will walk you through how to install the EGit plugin in eclipse and how to checkout an existing repository.
This is Part 3 in a 3-part series on Experts Exchange to discuss error handling in VBA code written for Excel. Part 1 of this series discussed basic error handling code using VBA. http://www.experts-exchange.com/videos/1478/Excel-Error-Handlin…

744 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now