我正在与COM对象(Microsoft ADO Recordset对象)交谈。在某些情况下,记录集将返回失败的(即否定的)HRESULT
,并显示以下消息:
我知道此错误消息的含义,知道它为什么发生,并且我如何解决它。但是我知道这些事情是因为我阅读了消息,所幸的是我所理解的语言。
现在,我想专门处理此异常。 COM对象引发了HRESULT
0x800A0CC1
在理想情况下,当我尝试访问时,Microsoft会记录what errors can be returned:
records.Fields.Items( index )
索引无效。但是他们没有。他们最常说的是会发生错误,即:
鉴于未记录返回的错误代码,当我 try catch 异常时,处理特定的返回代码'0x800A0CC1'是正确的吗:
?
由于Microsoft没有记录错误代码,因此他们将来会在技术上进行更改。
最佳答案
他们确实记录了此错误代码,但是很难找到:
ErrorValueEnum:
adErrItemNotFound 3265 -2146825023 0x800A0CC1 Item cannot be found in the collection that corresponds to the requested name or ordinal.
..so,因为它是有文件记录的错误代码,因此可以对其进行显式测试是安全的。