2012-02-21 4 views
7

빌드 시스템의 일부로 빌드 된 일단 바이너리에 서명하기 위해 인증서와 함께 signtool.exe를 사용합니다. 때때로 (그것이 칠 때 이야기하기 어렵다), 서명에 실패 다음 MSDN 1의 종료 코드에 따라 SignTool.exe가 종료 코드 1로 간헐적으로 실패 함

error MSB3073: The command "C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\bin\signtool.exe" [...] exited with code 1. 

파일에 서명 오류가 있음을 의미한다. 파일이 서명되지 않았 음을 확인할 수 있습니다.

때때로 타임 스탬프가없는 파일이 서명 된 경우에도 타임 스탬프 부분이 다른 오류 메시지와 함께 시간 초과되는 경우가 있습니다.

이 겉으로보기에 무작위적이고 일관성없는 서명 오류를 어떻게 해결할 수 있습니까?

+0

동일한 경험이 있습니다. 타임 스탬프 중에 signtool이 실패하는 경우가 있습니다. signtool을 다시 실행하는 것 이외의 다른 해결책이없는 것 같습니다. –

+0

@ EugeneMayevski'EldoSCorp 어떤 사람들은 Windows XP 인증서 작업을 업데이트하고 다른 이상한 일들을보고합니다. 실패한 빌드가 나를 위해 매우 심각하기 때문에 확실한 답을 원합니다. 그러나 나는 네가 옳다는 것을 두려워한다. – ashes999

+1

타임 스탬프 서버에 완전히 도달 할 수 없다고 가정합니다 (네트워크 케이블이 빠져 있음 등). 어떻게 signtool이나 다른 도구가이 문제를 처리 할 수 ​​있습니까? 물론 signtool이 실패에 대해 더 관대하고 타임 스탬프를 다시 수행하려고 시도했으나 어쨌든 타임 스탬프 실패 가능성을 대비해야합니다. –

답변

5

때때로 타임 스탬프 서버에 대한 연결 실패가 때때로 실패하는 것으로 의심됩니다. 아마도 해당 시간에 연결이 끊어 졌는지 시스템 이벤트 로그에서 확인하십시오.

+0

이 경우, 어떻게 수정합니까? 타임 스탬프 서버를 제어하지 않습니다. – ashes999

+0

거의 모든 것이 될 수 있습니다. 인프라를 확인하십시오. 우리는 한때 결함이있는 네트워크 케이블에 문제가있었습니다. 그것은 쉽다. 유지 관리로 인해 로컬 다운 타임이 발생할 수 있습니다. 인터넷 제공 업체의 문제 일 수 있습니다. 내 충고 (Eugene Mayevski 'EldoS Corp가 설명한대로) : 재시도 메커니즘을 구현하십시오. 어셈블리 서명이 프로세스의 중요한 부분이되도록하지 마십시오. –

+0

답변을 편집하여 빌드 프로세스가보다 견고해야한다고 말할 수 있습니까? 그게 내가 끝내 준거야. – ashes999

2

동일한 문제가있었습니다. 그것은 MS 맬웨어 방지 프로세스 인 MsMpEng.exe가 바이너리를 검사하고 다른 사용자가 액세스 할 수 없기 때문에 발생합니다. 이 문제를 해결하기 위해 RAM 디스크에 바이너리를 빌드하고 작동했습니다.

2

저는 Windows 8.1에서이 문제를 다루었습니다. 일부 사람들이 인용 한 Windows XP 루트 인증서 문제가 아닙니다.

서명 한 .exe도 실행 중이므로이 문제가 발생했음을 발견했습니다.

당신이 cmd를 프롬프트에서 서명 도구를 실행하고 로그인 할 경우 CreateProcess를 리턴 코드 1보다 (훨씬 더 잘못이 무엇인지를 알려주는 유용한 텍스트 메시지를 받게됩니다().

는 실행을 중지 프로세스가 성공적으로 완료되었습니다.

1

필자의 경우 솔루션의 .pfx 파일이 오래된 것입니다. 누군가가 인증서 파일을 새 유효한 파일로 바꾸라고 할 때까지 "Fails

의미, 인증서 파일이 유효하고 만료되지 않았는지 확인하십시오.