퇴근5분전

2024/07/28 +1

  설비가 90여대가 가까운데 프로그램 업데이트가 자동이 아니다. 

할때마다 배포서버에 배포 후 프로그램을 각 설비마다 가서 껐다 켜줘야 한다. 

이때 구형pc는 켜지는게 느리다. 그래서 프로그램이 꺼지면 설비가 일정시간 동안 신호를 받지 못하면 멈춘다. 

 

 그래서... 지금까지는 시간에 쫒기다보니... 재시작 프로그램을 만들 시간을 낼 수가 없어서 몸으로 때웠다.

이제 재시작을 만들었다. 

 추후엔 업데이트할 내역이 있으면 자동 재시작도 가능할거라 생각한다. 

샘플프로그램이다. ( 설비에서 제대로 동작하는 것을 확인 하였다. )

 

1. 버튼을 누르면... 해당 프로그램은 죽으면서 cmd로 Restart 프로그램을 띄운다. 

2. 파라미터로 원래 프로그램의 프로세스명과 재시작해줄 프로그램 실행경로를 넘겨준다. 

3. 재시작 프로그램이 떠서 원 프로그램이 죽는지 체크하고... 죽고 나면 다시 실행시켜준다. 

 -- 이때 설비에 시그널을 던져주기 위해... 별도의 쓰레드를 잠깐 돌려준다. 

+++++++++++++++++++++++++++++++++

추가. 

재시작 프로그램을 도입했는데... 시행착오? 같은게 있었다. 

재시작 할 프로그램도 업데이트 항목에 넣으면... 재시작되는 도중에 업데이트가 안된다. 

 

 업데이트 파일은 ReStart00.exe로 00을 붙여서 배포하고

재시작 하는 이벤트에서 ReStart00.exe를 복사해서 ReStart.exe로 덮어쓰기.

그 후 ReStart.exe를 실행하도록 바꾸었다. 

+++++++++++++++++++++++++++++++++

하나더...

설비별로 별도의 테스트가 필요한 경우가 있어서... 

 

재시작 프로그램이 실행중에 'TestFile' 이라는 폴더에 테스트용 실행파일이 있다면 

파일이 존재하면 옮겨서 붙여넣기 해준다.

+++++++++++++++++++++++++++++++++

또 하나...

이래 저래 시행착오를 거치다가...

ReStart 바로가기 만드는 콘솔프로그램을 만들었다. 

 

 이유는 재시작 프로그램배포와 함께 맞물려서 깔끔하게 안돌아간다... 88대를 배포하다보니...

전체 배포를 했음에도... 신뢰가 안되네... 멈출까봐... 불안한 느낌?

 처음 배포 후 재시작눌렀을때 일부 pc에서 재시작 안하고 콘솔이 종료되는 현상이 있었더랬다... 

수정 후... 잘 되긴 하는데... 구형PC는 좀 불안하긴 함... 

배포할때 ReStart.exe를 붙여넣고 바로가기 생성프로그램을 돌려서

이걸 실행해놓은 상태에서 프로그램을 끈다. 

그러면 정해진 프로세스대로 동작하면서 업데이트 된다. 

 전체 배포가 잘 진행된다 싶을때까지... 구형PC들은 이걸로 사용할 예정이다. 

****************************************************

마지막으로.. 

오늘 모두 배포 완료했다. 시작하자마자 콘솔이 꺼지는 현상도 잡혔고... 

업데이트 중 설비가 멈추지는 않을 듯 하다. 

구형설비의 프로그램이 죽고 되살아 나는데 시간이 참 오래 걸리네...