美好的一天,所有。检查COM对象收集属性存在
我一直在琢磨这一段时间。我编程式(在VB6中)筛选Outlook PST,索引其中的项目。我遇到了一个有点损坏的地方,这是我遇到困难的地方。我的程序附加了PST并开始钻取文件夹(olFolder)。这些Outlook创建的对象应该有一个集合,通常会保存子文件夹(适当地命名为文件夹)。
在我的代码执行过程中,我递归地调用进程文件夹函数来处理当前文件夹中的所有文件夹,但我有一个没有集合的文件夹。这会导致异常,因为我正在检查集合中文件夹的数量,并且没有任何内容需要检查。我知道如何检查一个对象的存在,但是我很难检查一个对象中是否存在一个集合。任何人都遇到过这个?
UPDATE
表达:
If Not fl.Folders Is Nothing Then
结束抛出异常太。那我得到的例外是:
Could not complete the operation because the service provider does not support it.
这只是试图访问这似乎有被FUBARed一个文件夹集合属性这个损坏的文件夹时。
FINAL Alrighty。在这种情况下,我只是要进行一些内联的错误处理。
If Not Err.Number = -2147221246 Then
'Do the thing with the other thing
End If
Err.Clear
嗯。我可以发誓我已经试过了,并且抛出了一个例外......好吧,非常感谢你的帮助。这是我在星期六早上工作时得到的...... – CodeWarrior 2011-05-28 13:53:13
起初,它看起来像是有效的,但是显然我尝试过,并没有奏效。我会在上面的文章中添加更多的细节。 – CodeWarrior 2011-05-28 14:06:42
虽然这不是我的答案,但我正在处理一个严重的PST文件,Outlook令人不安,这确实是我如果这是一个更“正常”的做法(是否有这样的发展中的事情?)的情况。 – CodeWarrior 2011-06-10 14:21:16