COM: How to handle a specific exception?
Posted
by Ian Boyd
on Stack Overflow
See other posts from Stack Overflow
or by Ian Boyd
Published on 2010-06-01T17:42:14Z
Indexed on
2010/06/01
18:23 UTC
Read the original article
Hit count: 426
i'm talking to a COM object (Microsoft ADO Recordset object). In a certain case the recordset will return a failed (i.e. negative) HRESULT
, with the message:
Item cannot be found in the collection corresponding to the requested name or ordinal
i know what this error message means, know why it happened, and i how to fix it. But i know these things because i read the message, which fortunately was in a language i understand.
Now i would like to handle this exception specially. The COM object threw an HRESULT of
0x800A0CC1
In an ideal world Microsoft would have documented what errors can be returned when i try to access:
records.Fields.Items( index )
with an invalid index. But they do not; they most they say is that an error can occur, i.e.:
If Item cannot find an object in the collection corresponding to the Index argument, an error occurs.
Given that the returned error code is not documented, is it correct to handle a specific return code of `0x800A0CC1' when i'm trying to trap the exception:
Item cannot be found in the collection corresponding to the requested name or ordinal
?
Since Microsoft didn't document the error code, they technically change it in the future.
© Stack Overflow or respective owner