Click here to Skip to main content
15,889,034 members
Please Sign up or sign in to vote.
4.00/5 (1 vote)
See more:
I have an MFC MDI application with the automation layer implemented as dual interface. So the the early and late binding clients are supported.
With the early binding clients as C#, etc. everything is fine, but late binding clients in this case the Excel, VBA report the "Run-time error '438'. Object doesn't this property or method.".
Looks like the late binding clients do not see some of the methods from COM interface.
Does enybody encountered this kind of problem?
And what could be the resolution.
Any kind of suggestions appreciated.
Thanks.
Posted

Hello,

It looks like you have typelibrary linked or objects idl with different version of
the app than actual ocx.
Does your issue happend due calling some methods?

Some useful information I think you can find here:http://www.vbforums.com/showthread.php?460591-RESOLVED-Runtime-error-438-Object-doesn-t-support-this-property-or-method[^]

Regards,
Maxim.
 
Share this answer
 
Comments
oleg63 10-Jan-13 11:58am    
Thanks Max,

Yes, some methods are affected, some are not during the Excel VBA calls.
The same routines doesn't work if I call them from MATLAB.
Interestingly the MATLAB can see the all COM interface methods, but when I try to call problematc ones, it reports - "Error: method or property not found".
Maxim Kartavenkov 10-Jan-13 12:41pm    
You also can try retrieve methods at runtime from IDispatch and invoke them directly without binding.
oleg63 10-Jan-13 13:16pm    
But everything must work from Excel as well.
Now I'm checking on proper TLB embedment inside the executable.
Maxim Kartavenkov 10-Jan-13 13:26pm    
try to look at that posts: maybe you will find some useful things: http://www.google.ru/search?hl=en&q=Run-time+error+%27438%27
Maybe you've something in the methods that are failing that is not automation-compatible.

If you post the declaration of the failing method (IDL/C++) then it maybe possible to identify what.

The following subject lists Automation Compatible Types[^]
 
Share this answer
 
Comments
oleg63 11-Jan-13 17:17pm    
Thanks Rob,
But I use only automatin types. It was verified on first place.
I have a very heavy project, now I'm stripping down it to purely MFC MDI project.
Just making sure another application stuff is not affecting the COM interface.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900