Я поддерживаю приложение VB6 Windows, которое подписывает PDF-документы под цифровой подписью, запустив JS-файл, расположенный в подпапке Javascripts от Acrobat 9.0. Теперь мой клиент хочет подключить другой считыватель смарт-карт к ПК, на котором размещается приложение, со своей собственной смарт-картой, содержащей сертификаты, относящиеся ко второму человеку, который подпишет определенный тип документов.Выбор смарт-карт для цифровой подписи
Мой вопрос: как я могу программным образом выбрать из своего кода JavaScript считыватель смарт-карт, который я хочу? В моем коде JavaScript я следующее:
//Initialize the signature handler
var myEngine = security.getHandler("Adobe.PPKLite");
//Obtain the available certificates
var ids = myEngine.digitalIDs;
var myCerts = ids.certs;
//Find the certificate I want to use to sign
for(var j=0; j<myCerts.length; j++)
{
if(myCerts[j].subjectCN == "SMITH JOHN")
{
oCert = myCerts[j];
break;
}
}
//Log to the signature engine by passing the certificate I want to use
//and the slot where the corresponding smart card reader is plugged
myEngine.login({ oParams: { cDIPath: ACROSDK.sigDigitalIDPath,
cPassword: ACROSDK.sigUserPwd,
iSlotID: 1,
oEndUserSignCert: oCert
}
});
//Digitally sign the document with the certificate I chose
sigField.signatureSign({oSig: myEngine,
bUI: false,
oInfo: { password: ACROSDK.sigUserPwd,
location: ACROSDK.sigLocation,
reason: ACROSDK.sigReason,
contactInfo: ACROSDK.sigContactInfo,
appearance: "FirmaRPPR"
}
});
Почему я получаю общую ошибку при выполнении signatureSign? Каким образом можно назначить параметр iSlotID при входе в механизм подписи или, альтернативно, параметр cTokenLabel?
Заранее благодарим за помощь и предложения!