본문 바로가기

프로그래밍

[Twincat3] 윈도우7 64bit 에서 빌드 시 missing file 오류 해결

  인증서등록 및 환경변수 등록이 필요하다.


  Visual Studio에서 해당 프로젝트 속성 - 빌드 이벤트 - 빌드 후 이벤트 에 보면 

"$(WINDDK7)\bin\x86\signtool" sign /v /s PrivateCertStore /n $(TWINCATTESTCERTIFICATE) "$(TargetPath)"

라고 되어 있는데 나의 경우 TWINCATTESTCERTIFICATE 라는 환경 변수를 못찾아서 missing file 오류가 발생 했다.

이 환경변수는 인증서와 관련된 변수로 아래의 순서대로 인증서를 만들고 환경변수로 등록 해주면 된다.


1. Visual Studio 2010/2012 command prompt 를 연다. 

위치 : 시작 - 모든프로그램 - Microsoft Visual Studio 2010/2012 - Visual Studio Tools - VS2010용 개발                  자 명령 프롬프트


2. 프롬프트에 아래 명령어를 입력해서 인증서 파일을 만든다. (MyTestSigningCert는 인증서 명과 파일명, 원하는 이름을 넣어주면 됨)

makecert -r -pe -ss PrivateCertStore -n CN=MyTestSigningCert MyTestSigningCert.cer


3. 인증서를 인스톨 한다.

Certmgr.exe /add MyTestSigningCert.cer /s /r localmachine root


4. Certmgr 명령을 입력하면 인증서 창이 뜬다. 거기서 신뢰할 수 있는 루트 인증 기관 탭에 MyTestSigningCert 가 있는지 확인


5. 등록한 인증서를 활성화 시켜준다.

bcdedit /set testsigning yes


6. 환경변수를 등록해준다.

시스템변수 - 새로 만들기에 변수이름 : TWINCATTESTCERTIFICATE (vs 빌드 후 이벤트에 설정되어 있는 환경변수 이름을 똑같이 넣어준다.)

변수값 : MyTestSigningCert


7. Visual Studio 재실행


8. 빌드