Photon Server서버 코드를 디버깅하기에는 몇 가지 방법이 있습니다.
1. 우선 서버의 파일을 자동적으로 갱신할 수 있도록 Visual Studio프로젝트의 설정을 실시합니다.
프로젝트의 프로퍼티로 이동해 [Build] 탭에서 Output경로를 선택하고
Photon이 dll을 읽는 경로를 설정해주세요.
(예:"E:\Projects\Photon\Server\deploy\Mmo\Photon.MmoDemo.Server\bin\")
2. 디버깅에는 3가지 방법이 있습니다.
1)디버거를 어태치하는 방법
Debug->Process에 어태치, PhotonSocketServer.exe를 선택.
어태치 할 때에는 관리 코드(Managed Code)만 선택해주세요.
(네이티브 코드를 선택할 경우, 디버거를 디태치하면 서버, 프로세스가 강제 종료됩니다.)
그 다음, 어태치를 눌러주세요.
2)코드에서 디버거를 기동
Application클래스(Photon.SocketServer.Application을 승계)에서 Setup()을 오버라이드 하고, 아래 코드를 추가합니다
System.Diagnostics.Debugger.Launch();
서버 코드가 기동될 때 디버거를 어태치 할지 묻는 메시지 박스를 취득합니다.
이 방법으로 스타트업 코드를 디버깅할 수 있습니다.
3)자동으로 디버거를 어태치.
이 방법은 Visual Studio에서 F5키를 클릭하는 것만으로, 디버거를 어태치 할 수 있는 방법입니다.
솔루션에 더미의 빈 C++프로젝트를 작성합니다.
main.cpp을 추가하고, main()에는 스텁을 추가합니다.
그 다음, 스타트업 프로젝트에 설정합니다.
이것이 빌드가 되면 서버도 빌드 되도록 프로젝트의 의존 관계를 설정합니다.
프로젝트의 프로퍼티의 Debugging탭에서 PhotonSocketServer.exe가 배치되어 있는 장소에 Command를 변경합니다.
(예:"E:\Projects\Photon\Server\deploy\bin_Win32\PhotonSocketServer.exe")
Attach에는 Yes를 선택합니다. Debugger Type은 Managed Only로 설정합니다.
(네이티브와 혼합시키면 디버거를 디태치할 때 서버・프로세스가 강제 종료되기 때문입니다.)
F5 키를 누르면 컴파일, 서버의 갱신, 디버거의 어태치를 할 수 있습니다.
※영어판 Visual Studio를 바탕으로 이 문장을 작성하고 있어
일부 표기가 다른 경우가 있습니다. 미리 양해 바랍니다.
댓글
댓글 0개
댓글을 남기려면 로그인하세요.