지금껏 C/S 만 위주로 개발을 하다 오랜만에 Web 관련 프로젝트를 하고있다..
물론 Silverlight 라서 크게 문제되지는 않지만 8, 9 년 전에 PHP 하던게 Web 관련 일은 전부인지라...
이것 저것 걸리는게 많다...
그 와중에 간간히.. 때때로 매번.... Silverlight 쪽 소스 변경한 것을 확인할려고 솔루션 탐색기의 Web Project 를
디버그 모드로 실행하면("마우스 우클릭=>디버그=>새 인스턴스 시작") 위와 같은 에러가 난다... 팝업창을 닫으면
디버깅이 종료되서 팝업창을 닫지 않고 그냥 진행해 보면 마지막 소스가 반영되지 않아서 인지 브레이크 포인트에 걸리지도 않는다..
난 분명히 소스를 수정하고 디버깅 했는데... 안된다... WPF 와 Link 를 해서 사용하고 있어서 WPF 에서 확인해보면 또 수정된 부분이 잘 반영되어 있따..
우짜지....
.....
...
.
트레이 아이콘에 asp.net development server 아이콘이 실행중이고 그래서 소스 변경하고 디버깅을 하면 알아서 잘 실행되던게
자꾸 포트 바인딩 에러가 난다...
처음엔 어라... 어디에서 저 포트를 쓰고있찌??? 라면서 삽질 좀 했다
구글링해도 마땅한 해결책을 찾지 못하고...
Visual Studio 에서 이거저것 확인하던 중에 해당 Web Project 의 속성에 보니
한글판 기준으로 [개발서버] 라는 카테고리에 [디버깅 시 항상 시작] 이라는 속성이 있다... True 로 되어있다...
어라.. 걍 트레이에 항상 떠 있었는데... 매번 새로 실행을 시키나?... 해서 False 로 바꾸고 해보니 포트 바인딩 에러가 나지 않는다.
머 전문적으로 어떻게 설명을 해야할지는 모르겠지만 직감적으로 포트 바잉딩 에러 자체가 기존에 Listening 하고 있는 포트를
또 바인딩할려고 해서 나는 에러니깐(다행히 소켓에 대한 개념은 약간 있었나 보다....)...
해결 된 거 맞지? 확실히 이 문제인지는 모르겠으나... 지금은 정상적으로 브레이크 포인트도 다 먹고 잘~~ 된다
ㅎ~
======= 추가 설명 =======
[디버깅 시 항상 시작] 의 값에 따른 Process Explorer 로 확인한 스크린 샷
다음 스샷에서 보는 것 처럼 Visual Studio 하위로 WebDev.WebServer40 프로세스가 True 일때는 2 개가.. False 일때는 정상적으로 1 개만 실행이 된다
결국 WebDev.WebServer40 프로세스가 중복 실행 되면서 동일한 포트에 바인딩할려다가 발생한 에러인듯 하다...
[디버깅 시 항상 시작 = True]
[디버깅 시 항상 시작 = False]
'IT > Dot Net' 카테고리의 다른 글
특정 폴더 하위의 프로젝트들을 솔루션하나로 묶기 (0) | 2013.03.15 |
---|---|
윈도우 폼 개발후 배포시 사이즈가 이상하다...? (0) | 2012.05.18 |
[펌]Visual Studio 2010 OutOfMemoryException (0) | 2012.01.12 |
유용한 Extension Method 하나 (0) | 2011.05.03 |
C# 으로 안드로이드 또는 아이폰 어플 개발 (0) | 2011.04.06 |