본문 바로가기

vc++

필터와 인터페이스 ~ 아 깜빡했다. ㅠㅠ 헤더파일 에서는... STDMETHODIMP NonDelegatingQueryInterface(REFIID riid, void **ppv) { if(riid == IID_IEffectFg) return GetInterface((IEffectFg*)this, ppv); else return CTransInPlaceFilter::NonDelegatingQueryInterface(riid, ppv); } IDL 파일에서는... import "unknwn.idl"; [ object, uuid(2E828560-C932-4B09-BAEF-A3253630C38E), local, version(1.0), helpstring("IEffectFg Interface"), pointer_default(unique) ] 이렇게.. 더보기
Visual C++ 개념: 기능 추가 << 유니코드 및 MBCS(멀티바이트 문자 집합) 지원 >> 유니코드 및 MBCS(멀티바이트 문자 집합) 지원 Visual C++ 개념: 기능 추가 유니코드 및 MBCS(멀티바이트 문자 집합) 지원 일부 국제 시장에서는 문자 집합이 더 큰 일본어, 중국어 등의 언어를 사용합니다. 이러한 시장의 프로그래밍을 지원하기 위해 큰 문자 집합을 처리하는 두 가지 서로 다른 방법에 MFC 라이브러리를 사용할 수 있습니다. 유니코드 MBCS 유니코드 문자열에 대한 MFC 지원 전체 클래스 라이브러리는 조건에 따라 유니코드 문자 및 문자열에 사용할 수 있습니다. 특히 CString 클래스는 유니코드에 사용할 수 있습니다. 참고 MFC 라이브러리의 유니코드 버전은 사용자 지정 설치 과정에서 선택해야만 하드 디스크에 복사되며 다른 종류의 설치 과정에서는 복사되지 않습니다. MFC .. 더보기
rgs 파일에 대해서.. HKLM { NoRemove SOFTWARE { NoRemove Microsoft { NoRemove Windows { NoRemove CurrentVersion { NoRemove Explorer { NoRemove 'Browser Helper Objects' { ForceRemove '{D2F7E1E3-C9DC-4349-B72C-D5A708D6DD77}' = s 'HelloWorldBHO' { val 'NoExplorer' = d '1' } } } } } } } } NoRemove 키워드는 BHO 등록을 취소할 때 키를 삭제하지 않아야 한다는 것을 나타냅니다. 이 키워드를 지정하지 않으면 빈 키가 제거됩니다. ForceRemove 키워드는 키를 비롯하여 키에 포함된 모든 값과 하위 키를 삭제해야 한다.. 더보기
Flickering 을 방지해 보자 다이얼로그에 다른 컨트롤을 올리고 WM_SIZE 이벤트가 발생하였을 때 크기변경을 하다보면 화면이 심하게 번쩍 거리는 것을 볼 수 있다. 이를 flickering이라고 하는데 여간 눈에 거슬리는 것이 아니다. 이런 현상을 줄이기 위한 방법으로 어떤 것이 있는지 알아 보고자 한다. ............................................................................................................. 그럼 깜박꺼림(Flicker)를 제거한는 간단한 프로그램을 짜 보죠. 초보자들이 비절씨를 할 때 아장 쉽게 할수 있는 것 중 하나가, CFormView 클레스를 뷰로 하여 작성한는 것입니다. 폼뷰로 프로그램을 작성하였을 때.. 더보기
error LNK2019: unresolved external symbol _IID_IBaseFilter 등등 Strmiids.lib 을 링크에 걸어준다.. 이 외에.. 아래 참고.. If yes, as far as I know, “Strmiids.lib” is used to export DirectShow class identifiers (CLSIDs) and interface identifiers (IIDs), all DirectShow applications require this library. Thus, would you please first add “Strmiids.lib” as additional dependency to your project? Secondly, AMGetErrorText is exported in "Quartz.lib”, thus, would you please add “Quar.. 더보기
LINK : external error _CLSID_*** 에러 해결법 #include 을 stdafx.h 에 넣어준다.. 일반헤더파일이나 C++ 파일에 넣어주어도 될 것 같지만.. 일단은 stdafx.h 파일에 넣어주도록 하자.. 진작 적어 놓을 것을.. 또 깜빡하고.. 헤맸다. ㅠㅠ 더보기
DirectX SDK의 설정.... 일단 VC++6 까지 지원하는 마지막 SDK는 2003년 Feburary 이므로.. 일단 Platform SDK는 2003년 Feburary 이것으로 그리고 이것과 합치하는 DirectX SDK는 Summer 2003 버전... 2004 October 가 마지막 버전이라는 글도 보았는데 실제로 해보니 맞지 않았다.. ㅠㅠ 덕분에 날린 시간이라니... 그리고 strmbasd.lib, wmvcore.lib, wmstub.lib 요 세 라이브러리 파일은 quartz.lib, strmiids.lib 로 바꾸어서 빌드하면 된다.. 크아.. 마소야.. 마소야.. ㅠㅠ 더보기