Fog Creek Software
Discussion Board

Windows programming in MS language

When programming Windows application that you want to integrate with Microsoft products (like Word, Excel, Outlook, etc.) is it then easist to use a Microsoft language like Visual Basic?

Earlier we have used Delphi a lot, but we never really did any intergration with MS products.

I was thinking of a product like CityDesk. That one is written in VB (as far as I know) and it seems to be working quite well with MS products like Frontpage.

What are the pros and cons of using Visual Basic and how do you actually intergrate with MS products so that the user never really knows that she's using two softwares?

Rasmus Grunnet
Friday, September 20, 2002

Objects. Thats the answer.
VB/Delphi/X shouldn't matter, MS tools like excel/word/pp expose methods and properties via the use of objects, you should find lots of examples on the MS knowledgebase.

Friday, September 20, 2002

PS - learn a bit about late v early binding before you start.

Friday, September 20, 2002


Microsoft use a framework called ActiveX (Formerly Ole) for integrating products.

Delphi fully support ActiveX, so you can produce equal support for MS Integration in Delphi.  However, I find Delphi is always just a little clumsy using Active X (I was using version 4).  It was necessary to use wizards to generate declarations, and theres some messing about with type conversions. 

VB is built for the job.  All of Microsofts Office's applications uses VBA.  When VB is integrating with other Microsoft products, it is doing what it was built for.

However, I've written a few apps that integrate Access, Word, Excel and Outlook and I've found one source of frustration.  VB hides to much from you, so that if you try to do anything to advanced you keep get bitten from behind the screen. 

If your doing anything advanced, then Delphi's transparancy is a bonus.  You can see whats going on, and this is worth the extra initial effort.

If your just doing every day stuff (generating documents and sending them as emails, for example) then VB is the fastest path.

Ged Byrne
Friday, September 20, 2002

One non-tech reason to go VB is that almost all the example code you will find on this is in VB.

Just me (Sir to you)
Friday, September 20, 2002

*  Recent Topics

*  Fog Creek Home