How to: Retrieving BuiltinDocumentProperties from Word Document

  • Thread starter Thread starter Charles Law
  • Start date Start date
C

Charles Law

Word has a property BuiltinDocumentProperties, which (in VBA) returns a
DocumentProperties collection. In VB.NET, using Word automation, it returns
a _ComObject. I have tried to cast this to DocumentProperties, but I get an
invalid cast exception.

In Explorer, I can right click a Word document, click Properties, and I get
a tabbed dialog with Custom and Summary tabs. These tabs show me the built
in document properties of the document.

I notice that Explorer does this without starting a copy of Word, and it
does it reasonably quickly. The only coded example I have found uses late
binding to retrieve a property by name, but it assumes that I know the name
of the properties in advance.

How can I get at these properties in the same way that Explorer does it,
without starting Word? Also, Explorer can get the properties of a PDF,
without starting Acrobat, so there must be a generic way.

Failing that, how can I use Word automation and early binding to get them?

Any thoughts?

TIA

Charles
 
¤ Word has a property BuiltinDocumentProperties, which (in VBA) returns a
¤ DocumentProperties collection. In VB.NET, using Word automation, it returns
¤ a _ComObject. I have tried to cast this to DocumentProperties, but I get an
¤ invalid cast exception.
¤
¤ In Explorer, I can right click a Word document, click Properties, and I get
¤ a tabbed dialog with Custom and Summary tabs. These tabs show me the built
¤ in document properties of the document.
¤
¤ I notice that Explorer does this without starting a copy of Word, and it
¤ does it reasonably quickly. The only coded example I have found uses late
¤ binding to retrieve a property by name, but it assumes that I know the name
¤ of the properties in advance.
¤
¤ How can I get at these properties in the same way that Explorer does it,
¤ without starting Word? Also, Explorer can get the properties of a PDF,
¤ without starting Acrobat, so there must be a generic way.
¤
¤ Failing that, how can I use Word automation and early binding to get them?

See if the following helps:

How To Use Automation to Get and to Set Office Document Properties with Visual Basic .NET
http://support.microsoft.com/default.aspx?scid=kb;en-us;303294


Paul
~~~~
Microsoft MVP (Visual Basic)
 
Hi Paul

Thanks for the reply. It's actually this article that I am using as my
starting point.

In the article, Word is launched and a /known/ parameter - Author - is read.
Everything is done using late binding, and I would like to use early binding
because I always have Option Strict On.

Also, it presupposes that I know which properties I want to read, when, in
fact, I just want to get a list of the existing ones (and any custom
properties) to display to the user.

Thirdly, it is very slow, having to launch Word just to read these
properties. It would be nice to know how Explorer can do it so much more
quickly.

Charles
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Back
Top