Need help fixing newly created Outlook 2000 PIA

D

Dave Townsend

I have managed to create an Outlook 2000 PIA but when I try to use it in
an exisitng project that worked with the 2002 PIA I get a load of
compile errors. They boil down to the following:

foreach statement cannot operate on variables of type
'Microsoft.Office.Interop.Outlook.Inspectors' because
'Microsoft.Office.Interop.Outlook.Inspectors' does not contain a
definition for 'GetEnumerator', or it is inaccessible
(also occurs for Explorers and Items objects)
I checked with the object browser and indeed there is no GetEnumerator
method and seemingly no way to traverse the lists at all.

Cannot apply indexing with [] to an expression of type
'Microsoft.Office.Interop.Outlook.Inspectors'
(also occurs with Explorers, Folders, UserProperties)
I checked with the object browser and the indexer property does exist,
defined as:
"public const abstract new Microsoft.Office.Interop.Outlook.Inspector
this [ get]"
The const bit looks a bit odd to me.

'Microsoft.Office.Interop.Outlook.MAPIFolder' does not contain a
definition for 'ShowAsOutlookAB'
This property appears in the object browser as:
"public abstract new bool ShowAsOutlookAB [ get, set ]"

I compiled the PIA using the command line:

"tlbimp MSOUTL9.OLB /out:Microsoft.Office.Interop.Outlook.dll
/namespace:Microsoft.Office.Interop.Outlook /keyfile:sgKey.snk /primary
/reference:Office.dll /reference:Microsoft.Vbe.Interop.dll
/asmversion:9.0.2702"

Anybody had any experience with this or has any idea what I might have
done wrong and how to fix it?

Dave
 
D

Dave Townsend

Dave said:
I have managed to create an Outlook 2000 PIA but when I try to use it in
an exisitng project that worked with the 2002 PIA I get a load of
compile errors. They boil down to the following:

foreach statement cannot operate on variables of type
'Microsoft.Office.Interop.Outlook.Inspectors' because
'Microsoft.Office.Interop.Outlook.Inspectors' does not contain a
definition for 'GetEnumerator', or it is inaccessible
(also occurs for Explorers and Items objects)
I checked with the object browser and indeed there is no GetEnumerator
method and seemingly no way to traverse the lists at all.

Cannot apply indexing with [] to an expression of type
'Microsoft.Office.Interop.Outlook.Inspectors'
(also occurs with Explorers, Folders, UserProperties)
I checked with the object browser and the indexer property does exist,
defined as:
"public const abstract new Microsoft.Office.Interop.Outlook.Inspector
this [ get]"
The const bit looks a bit odd to me.

'Microsoft.Office.Interop.Outlook.MAPIFolder' does not contain a
definition for 'ShowAsOutlookAB'
This property appears in the object browser as:
"public abstract new bool ShowAsOutlookAB [ get, set ]"

I compiled the PIA using the command line:

"tlbimp MSOUTL9.OLB /out:Microsoft.Office.Interop.Outlook.dll
/namespace:Microsoft.Office.Interop.Outlook /keyfile:sgKey.snk /primary
/reference:Office.dll /reference:Microsoft.Vbe.Interop.dll
/asmversion:9.0.2702"

Anybody had any experience with this or has any idea what I might have
done wrong and how to fix it?

Dave

Minor addition, I delved in with ildasm and found the last bit about
ShowAsOutlookAB doesnt actually exist in my PIA. Looks like VS.NET is
getting xonfused by the 3 different PIA's I am referencing or something.
The other cases are still problems though.

Dave
 
Top