0

我只想检索在 Acrobat DC Pro 中打开的 PDF 文档的路径,并在 c# 中保存到我的数据库的路径,

我能够在 c# 中获取活动的 pdf 文档,但无法检索文档的路径,

Type PDFType = Type.GetTypeFromProgID("AcroExch.App");
CAcroApp AcroAppObj = Activator.CreateInstance(PDFType) as CAcroApp;  

CAcroAVDoc AvDocObj = AcroAppObj.GetActiveDoc() as CAcroAVDoc;  

CAcroPDDoc PdDocObj = AvDocObj.GetPDDoc() as CAcroPDDoc;

object jsObj = pdDocObj.GetJSObject();

现在在jsObj中,我得到 System.__ComObject,如果我使用 Vb.net,那么我得到的文档路径就像,

Dim docPath As string
docPath = jsObj.path

但是,在 C# 中是不允许的,我该怎么办?

4

1 回答 1

0

这是获取当前活动文档路径的另一种解决方案。它使用 Acrobat Form api 通过 js 获取路径。附上一个vbs例子。祝你好运,莱因哈德

Path = "D:\Test.pdf"

Set App = CreateObject("Acroexch.app")
app.show
Set AVDoc = CreateObject("AcroExch.AVDoc")
Set AForm = CreateObject("AFormAut.App") 'from AFormAPI

If AVDoc.Open(Path,"") Then
    '// write some js code on a vbs variable
   js =  "var f = this.path;" &vblf _
        & "app.alert(f);"
     '//execute the js code
    AForm.Fields.ExecuteThisJavaScript js
end if

Set AForm = Nothing
Set AVDoc = Nothing
Set APP = Nothing
于 2018-03-28T15:49:26.307 回答