Login | Register   
RSS Feed
Download our iPhone app
Browse DevX
Sign up for e-mail newsletters from DevX

By submitting your information, you agree that devx.com may send you DevX offers via email, phone and text message, as well as email offers about other products and services that DevX believes may be of interest to you. DevX will process your information in accordance with the Quinstreet Privacy Policy.

Tip of the Day
Language: VB6,MTS.COM+
Expertise: beginner
Dec 15, 2001



Building the Right Environment to Support AI, Machine Learning and Deep Learning

Generating IDL code to overcome binary compatibility issues

Among the different COM details that VB hides to the programmers, one of the most problematic one is that it doesn't let you take control on interface GUIDs. Binary compatibility settings in VB try to make you follow COM rules (as a fact breaking such rules with the interface forward mechanism it silently implements when you add a method to a class). In any case VB support in Interface definition and maintenance is definitely lacking when you have to design and implement large COM based systems.

Here are a couple of links to articles that illustrate a technique that lets overcome such limits. This approach may be scaring at first to VB programmers that are not that familiar with C language, cause you have to go a little deep into IDL, nevertheless, trust me, that, after the first little drop of you development speed, you will get much more robust and well designed applications.


However, instead of using OleViewer to reverse-engineer the Type library I suggest you to use the TypeLibrary Viewer from www.vivid-creations.com/ because OleViewer does not always generate IDL that can be immediately compiled by MIDL to generate the type library without a certain number of adjustments. I verified that the tool I suggest generates ready-to-compile IDL.

Enrico Sabbadin
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date