1

Тема: script

Подскажите почему при подписи выходит ошибка 0xE070000F?


var SKAD = new ActiveXObject("PKI.VCERT");
var SignParam = new ActiveXObject("PKI.SignParam");
SKAD.Initialize("test1",69);
SKAD.SignFile(SignParam, "", "C:\\Test\\sign1.in", "C:\\Test\\sign1.out");
SKAD.Uninitialize();

2

Re: script

Добрый день!

Если нужно подписать файл sign1.in, то параметры должны быть в другом порядке:

SKAD.SignFile(SignParam, "C:\\Test\\sign1.in", "", "C:\\Test\\sign1.out");

3

Re: script

Спасибо за быстрый ответ, еще небольшой вопрос: почему GetPKIErrorText не возвращает текст в переменную err_text

var err_text=""

try {
  SKAD.SignFile(...
}
catch (objError)
{   
    SKAD.GetPKIErrorText(objError.number,err_text);
    WScript.Echo(this.err_text);

}

Номер ошибки есть в objError.number

4

Re: script

VCERTCOM предназначена для вызова из Visual Basic и Delphi, не все функции работают при вызове из скриптов.

5

Re: script

Добрый день. Подскажите почему функция FindCert ничего не возвращает в переменную.

$skad = New-Object -ComObject 'PKI.VCERT'
$FindParam = New-Object -ComObject 'PKI.FindParam'
$FindParam.flag = 1
$FindParam.info = 524287
$arrCertificate=@()

$SKAD.Initialize('test2', 69)

$SKAD.FindCert($FindParam,$arrCertificate)

Должен возвратить собственный сертификат.