WinVerifyTrust редко дает сбой - PullRequest
2 голосов
/ 04 мая 2011

Я использую winverifytrust для проверки подписи.

Я проверяю с помощью WINTRUST_ACTION_GENERIC_VERIFY_V2.Но редко он возвращал «НЕТ ПОДПИСИ».Я не могу смоделировать проблему.

Я получаю отзывы о том, что это происходит у некоторых пользователей.В одном отзыве есть журнал, который указывает, что первый вызов WinVerifyTrust для файла завершился успешно, а второй вызов того же файла завершился неудачей.

Код, который я использовал, в точности равен

http://msdn.microsoft.com/en-us/library/aa382384%28v=VS.85%29.aspx

Любая идея, что могло послужить причиной сбоя.Один и тот же вызов одного и того же файла успешно завершился один раз, а затем не прошел.

Ответы [ 3 ]

1 голос
/ 04 мая 2011

Глядя на пример MS, с которым вы связались, если вы встретите TRUST_E_NOSIGNATURE, вам нужно проверить GetLastError() для получения еще TRUST_E_ кода ошибки.

Их логика для TRUST_E_NOSIGNATURE также включает в себя;

 else 
 {
   // The signature was not valid or there was an error 
   // opening the file.

Так что, похоже, ошибка ввода-вывода может также привести к этому (заблокированный файл может объяснить прерывистость) в любом случае GetLastError() должен объяснить.

0 голосов
/ 13 декабря 2017

Это происходит при вызове WinVerifyTrust на Windows Server 2008 с файлом, подписанным только с SHA-256,

, который не поддерживается по умолчанию на Server 2008, он ожидает подписи, использующие SHA-1.

0 голосов
/ 19 июня 2017

http://winwiki.org/wiki/wikimeta.php?kw=Error+Trust_e_nosignature%280x800b0100%29

Ошибка Error Trust_e_nosignature (0x800b0100) может быть вызвана повреждением системных файлов Windows.

В этой статье содержится информация, показывающая, как исправить ошибку Trust_e_nosignature (0x800b0100) как(вручную) и (автоматически).

...