| ||||
| ||||
Странная ситуация, есть код hMsg:=nil; hMsg := CryptMsgOpenToDecode(MY_TYPE,0,0,hCryptProv,nil,nil); if hMsg=nil then begin Result:=False; _LastError:=’Ошибка : ’+GetLastErrorText; Exit; end; if not CryptMsgUpdate(hMsg,OutData,OutDataSize, TRUE) then begin Result:=False; _LastError:=’Ошибка : ’+GetLastErrorText; Exit; end; if not CryptMsgGetParam(hMsg, CMSG_SIGNER_COUNT_PARAM, 0, @SignerCount, @dwSignerIndex) then begin Result:=False; _LastError:=’Ошибка : ’+GetLastErrorText; Goto _Err; end; последний вызов возвращает ошибку с кодом 234 - Имеются дополнительные данные. Случается это не всегда даже на одном и том же сообщении. КриптоПРО версии 2.0 build 2049. Заранее спасибо. | ||||
Ответы: | ||||
| ||||
Извините, а описание функции "CryptMsgGetParam" смотрено было? Сдается мне, что может и было, но не совсем внимательно. Пусть код приведен и не полный (без описания используемых переменных), но даже в этом куске можно заметить не правильное понимание передаваемых в функцию "CryptMsgGetParam" параметров. | ||||
| ||||
А не могли бы вы конкретно указать где я неправильно передал параметры, т.к. судя по МСДН сделал я как раз все правильно, тем более при вызове этой функции с параметрами типа CMSG_ENCODED_SIGNER и другими все работает нормально. | ||||