태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

달력

08

« 2017/08 »

  •  
  •  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  •  
  •  

DirectShow 관련해서는 프로젝트 환경을 깔끔하게 세팅하기가 참 어려운 것 같다. 지난 번에는 Visual Studio 6.0에서 DirectShow 컴파일할 때 했던 삽질 얘기였는데 이번에는 VS 2005다.

DirectShow 필터를 만들려면 샘플 프로젝트 중에서 BaseClasses 프로젝트를 컴파일해서 strmbase.lib 를 만들어야 하는데, 주어진 상황에서 뭔가 쉽게 잘 안되는 문제가 있었다.

주어진 상황은

  1. Visual Studio 2005
  2. Windows Server 2003 SP1 Platform SDK
  3. DirectX SDK 9.0

2003 SP1 Platform SDK 에서는 DirectShow가 PSDK 쪽으로 옮겨졌다. 그리고 BaseClasses 프로젝트가 솔루션 파일을 갖고 있지 않다. 그래서 nmake 를 가지고 컴파일을 해야한다.

어쨌거나 컴파일을 하면 뭔가 잔뜩 에러가 나온다. VC++ 8의 변경 사항 중에, for 문의 시작 조건 부분에서 선언한 변수의 범위가 for 블럭만으로 제한되도록 바뀐 것 때문에 이런 에러가 나는 것으로 확인되었다.

그렇다면 Makefile을 수정하여 컴파일 옵션을 변경해야 한다. 간단히 Makefile을 열고 컴파일 명령이 있는 부분에 /Zc:forScope- 라는 옵션을 추가하면 된다.

한 고비 넘었다. 그리고 다시 컴파일을 하면 에러 갯수가 확 줄어드는 것을 볼 수 있었다. 남은 에러를 보면 대강 '타입이 지정되지 않았는데, 이제는 int 라고 가정해버리는 짓따위는 하지 않아' 정도의 변명이었다.

몇 군데 함수 리턴 타입이 지정되지 않은 곳에서 에러가 발생하는 것인데 이건 별도로 옵션이 있는게 아니라서 소스를 직접 고쳐야 한다. 주변 소스에 맞게 적절히 타입을 선언해주고 다시 컴파일하면 성공!

사실 그냥 다음 버전인 Windows Server 2003 R2 Platform SDK 만 깔아도 문제가 해결된다고 하는데, PSDK를 또 까는게 귀찮아서 이런 삽질을 했다. -_-;

신고
Posted by wafe

댓글을 달아 주세요

코드 리뷰를 하기 위해서 소스를 보고 있는데 틈틈이 봐뒀으면 더 좋을 걸 한 번에 보자니 이거 영 진도도 안나가고 끙끙...

아무튼 비주얼 스튜디오에서 코드 읽을 때 기본적으로 딱 두 가지 단축키만 알고 있으면 편하게 소스의 숲을 헤집고 다닐 수가 있다. 한 절반은 먹고 들어간달까.

  • F12 : Edit.GoToDefinition
  • Ctrl+Shift+8: View.PopBrowseContext

GoToDefinition을 해서 소스를 보면서 막 돌아다니다가 PopBrowseContext를 하면 바로 전에 GoToDefinition했던 곳으로 이동한다. GoToDefinition을 여러 번 수행했다면 PopBrowseContext도 여러 번 수행할 수 있다. BrowseContext라는 개념이 뭔지는 잘 모르겠는데 스택으로 관리되는 것 같다.

참고로 Visual Studio 6에서는 "Ctrl+Numpad *"로 PopBrowseContext를 실행할 수 있다. HHK에는 Numpad가 없어서 대략 낭패였는데 MS에도 HHK 사용자가 많은걸까? ^^;

비주얼 스튜디오를 처음 실행할 때 어떤 설정을 사용할 것인지 물어보는데, Default를 선택하면 C# 키바인딩을 사용하는 걸로 알고 있다. 다른 설정을 선택하면 이것과는 달라질 수도 있다. 지난 번 DevDays 2007 서울에서 나눠준 단축키 표를 보니, 숫자만 2005에서 2008로 바꾼 것처럼 보인다. 2005와 2008 사이에 단축키 변화는 없는 모양이다.

참고로 요즘 MS 행사 때마다 나눠주는 Visual Studio 2008 단축키 포스터의 PDF 파일 다운로드 링크.

신고
Posted by wafe

댓글을 달아 주세요

  1. bacteria 2009.11.02 11:18 신고  댓글주소  수정/삭제  댓글쓰기

    좋은 자료 감사히 잘쓰겠습니다

  2. smilebrain 2010.01.13 10:24 신고  댓글주소  수정/삭제  댓글쓰기

    덕분에 소스 코드 리딩하는데 도움이 많이 되네요 감사합니다 ^^

  3. Hybrid 2010.03.24 15:33 신고  댓글주소  수정/삭제  댓글쓰기

    출력할 것이 필요했는데, 덕분에 잘 얻어갑니다. +_+

    • wafe 2010.04.04 21:44 신고  댓글주소  수정/삭제

      도움이 되셨다니 기쁘네요. 예전에는 VS 2008 나오고 한 동안 오프라인 행사에서 많이 나눠줬었는데, 이제 2010이 나오니 또 많이 나눠주지 않을까 싶습니다. ^^

  4. 베리베리스트롱 2011.01.26 10:38 신고  댓글주소  수정/삭제  댓글쓰기

    오호 한번씩 해봐야겠네요 좋은 자료 감사합니다 ^^