자산 패키지에 포함해야 하는 필수 DLL 결정
이 문서는 PlayFab 멀티 플레이어 서버에서 Windows 게임 서버를 실행하는 데 필요한 DLL 목록을 생성하는 데 도움이 됩니다. 기본적으로, 관리형 컨테이너 이미지에는 일반적으로 사용되는 많은 DLL이 포함됩니다. 필요한 추가 DLL을 확인하려면 게임 서버의 DLL 목록과 관리형 컨테이너 이미지에 포함된 DLL 목록을 비교합니다. 추가 DLL은 자산 zip 파일에 포함되어야 합니다.
필수 DLL 확인
ListDlls 유틸리티를 사용하여 게임 서버를 로컬에서 실행할 때 로드되는 모든 DLL을 나열합니다. 목록을 생성하려면 다음을 수행합니다.
- sysinternals에서 ListDlls를 다운로드합니다.
- 프로세스 모드에서 로컬 디버그 단계에 있는 지침을 사용하거나 LocalMultiplayerAgent를 사용하지 않고 독립 실행형 프로세스로 로컬 모신에서 게임 서버 실행 파일을 실행합니다.
- listdll을 실행하고 실행 중인 게임 서버를 매개 변수로 지정합니다. 예:
listdlls ServerLoadSimulator.exe
- 출력 목록과 자산 zip 파일에 포함된 DLL 목록(일반적으로 실행 파일과 동일한 폴더에 있는 모든 항목)을 비교합니다. 목록 사이의 델타는 게임 서버에 필요한 시스템 DLL입니다.
필수 DLL과 컨테이너에 포함된 DLL 비교
시스템 DLL 목록이 결정되면 다음 단계는 이러한 시스템 DLL 중 컨테이너에 이미 포함된 시스템 DLL을 확인하는 것입니다.
- PlayFab 멀티 플레이어 컨테이너 이미지를 다운로드합니다. 컨테이너 이미지를 다운로드하려면 로컬 디버그 단계에서 참조되는 setup.ps1 스크립트를 실행합니다. 또는 새 MPS 인스턴스를 할당하고 원격 데스크톱을 통해 연결합니다. 모든 Windows MPS 인스턴스에는 컨테이너 이미지가 다운로드됩니다.
- 다음 명령을 실행하여 새 Docker 컨테이너에서 명령줄 세션을 시작합니다. 관리자 명령 창을 실행해야 합니다.
docker run -it mcr.microsoft.com/playfab/multiplayer:wsc-10.0.17134.950 cmd
"wsc-10.0.17134.950"을 1단계에서 다운로드한 Docker 이미지의 태그로 바꿉니다. 올바른 태그를 잘 모르는 경우 docker images
을(를) 실행하여 다운로드한 이미지를 나열합니다.
- 명령줄에서 로컬 머신에서 필요한 DLL의 폴더에 해당하는 폴더를 찾습니다. 컨테이너에 있는 DLL을 나열하고 생성한 필수 DLL 목록과 비교합니다. 필수 목록에 있지만 컨테이너에 없는 모든 DLL은 자산 zip 파일에 포함되어야 합니다.
- cmd 프로세스를 종료하고 컨테이너가 중지되도록 하려면
exit
을(를) 입력합니다.