VBA:Acrobat 运行时间错误429; ActiveX 组件无法创建对象

VBA: Acrobat Run time error 429; ActiveX component can't create object

我有以下代码可以从 Excel VBA 中的 PDF 文件中读取内容:

'Note: A Reference to the Adobe Library must be set in Tools|References!
Dim AcroApp As CAcroApp, AcroAVDoc As CAcroAVDoc, AcroPDDoc As CAcroPDDoc
Dim AcroHiliteList As CAcroHiliteList, AcroTextSelect As CAcroPDTextSelect
Dim PageNumber, PageContent, Content, i, j
Set AcroApp = CreateObject("AcroExch.App")
Set AcroAVDoc = CreateObject("AcroExch.AVDoc")
If AcroAVDoc.Open(strFileName, vbNull) <> True Then Exit Function
' The following While-Wend loop shouldn't be necessary but timing issues may occur.
While AcroAVDoc Is Nothing
  Set AcroAVDoc = AcroApp.GetActiveDoc
Wend
Set AcroPDDoc = AcroAVDoc.GetPDDoc
For i = 0 To AcroPDDoc.GetNumPages - 1
  Set PageNumber = AcroPDDoc.AcquirePage(i)
  Set PageContent = CreateObject("AcroExch.HiliteList")
  If PageContent.Add(0, 9000) <> True Then Exit Function
  Set AcroTextSelect = PageNumber.CreatePageHilite(PageContent)
  ' The next line is needed to avoid errors with protected PDFs that can't be read
  On Error Resume Next
  For j = 0 To AcroTextSelect.GetNumText - 1
    Content = Content & AcroTextSelect.GetText(j)
  Next j
Next i
ReadAcrobatDocument = Content
AcroAVDoc.Close True
AcroApp.Exit
Set AcroAVDoc = Nothing: Set AcroApp = Nothing

End Function

Sub demo()

    Dim str As String
    str = ReadAcrobatDocument("C:\Desktop\asdf.pdf")

End Sub

但是,我在

收到运行时 429 错误
Set AcroApp = CreateObject("AcroExch.App")

怎么了?我有 Adob​​e Reader X,我检查过的参考文献是:

Acrobat Access 3.0 类型库 AcroBrokerLib AcroIEHelper 1.0 类型库 AcroIEHelperShim 1.0 类型库 Adobe Acrobat 浏览器控件类型库 1.0 Adobe Acrobat 10.0 类型库 Adobe Reader 文件预览类型库

从搜索查询 Google 中的第一个结果开始:

createobject acroexch.app error 429

您不能使用 Adob​​e Reader 执行此操作,您需要 Adob​​e Acrobat:

This OLE interface is available with Adobe Acrobat, not Adobe Reader.

https://forums.adobe.com/thread/657262