본문 바로가기

기타

[aws] GameLift Activating 상태에서 멈춤 해결하기



SERVER_PROCESS_CRASHED
Server Process exited without calling process ending with exit code -532462766. (C:\game\Sample.exe a)






게임리프트 콘솔에 빌드를 업로드하고 플릿을 만들었는데 Activating 상태에서 넘어가질 않는다.

조금 더 기다리면 위와 같은 에러 이벤트를 볼 수 있다.


ProcessReady 함수만 제대로 호출되도 Active 상태로 전환될텐데, 아무래도 해당 함수가 호출이 안되서 계속 Activating 상태로 남아있는듯 보인다.



* ProcessReady 호출 이전에 프로그램이 죽는 포인트가 없는지 검사한다.

* 빠진 DLL이 없는지 검사한다. (DLL에서 사용하는 또다른 DLL도 있을 수 있으니 ilspy / dependency walker 등을 사용하자)

* VS 재배포 가능 패키지가 미리 설치된 이미지를 기반으로 할 수는 없는 것 같으니, 서버 빌드에 설치파일 포함시켜서 스크립트를 짜자

* vs2015의 경우 msvcXXX 말고도 concrt140, vcruntime140, ucrtbase 파일도 필요하다.

* 지원하는 OS가 Windows Server 2012 이기 때문에 닷넷은 4.5.x 까지 기본으로 돌아간다.



[가장 쉬운 방법은 ec2 인스턴스를 새로 만들고, 완전 클린상태에서 게임 빌드를 복붙해놓고 돌아가는지 안돌아가는지 체크한다. 그러면 왜 안돌아가는지까지도 볼 수 있다.]


* exit code : -1073741819 AccessViolation

                      -532462766 디펜던시 에러

'기타' 카테고리의 다른 글

[AzureFunctions] 드랍박스 파일 연동하기  (0) 2017.01.24
[C++] ToString() 사용하기  (0) 2016.08.12
[VSCode] 확장 프로그램 작성하기  (0) 2016.07.11
웹소켓 프레임 구조  (0) 2016.06.30
C++의 Nested Namespace  (0) 2016.04.08