Adobe文件夹级别JS在Acrobat Pro DC上运行,但在Acrobat Reader DC上不允许

时间:2016-03-15 10:58:22

标签: adobe-reader fdf adobe-javascript

我有一个用例,从IIS / MVC下载PDF表单,由最终用户填写并提交回服务器。成功提交FDF响应后触发文档保护以禁止更改文档。保护由文件夹级javascript函数激活:

function applySecurity()
{
var DoApplyMySecurity = app.trustedFunction( function(){
var oMyPolicy = null;
app.beginPriv();
// First, Get the ID of My Security Policy
var aPols = security.getSecurityPolicies()
for(var index=0;index<aPols.length;index++){
    if(aPols[index].name == "AgreementPolicy"){
        oMyPolicy = aPols[index]; break;
    }
}
if(oMyPolicy == null){ app.alert("Policy Not Found"); return; }
   // Now, Apply the security Policy
   var rtn = this.encryptUsingPolicy({oPolicy: oMyPolicy });
if(rtn.errorCode != 0) app.alert("Security Error: " + rtn.errorText); 
   app.endPriv();
});
DoApplyMySecurity();
}

文档级函数调用上述函数如下:

function valuesSaved(msg)
{
   app.alert(msg);
   applySecurity();
   app.execMenuItem("Save");
   app.execMenuItem("Close");
}

问题是,使用Acrobat Reader DC提交表单时会发生以下错误:

  

NotAllowedError:安全设置阻止访问此属性或方法。   Security.getSecurityPolicies:7:Doc undefined:Exec

使用Acrobat Pro时,DC安全性已成功应用。 我已将Pro DC的安全设置导出到Reader DC。 我在这里缺少什么?

1 个答案:

答案 0 :(得分:0)

我认为这是意图 - 读者版本默认情况下不能保存更改的PDF