본문 바로가기

MFC

다이얼로그 기반 프로그램 시작시 윈도우 숨기기 다이얼로그 기반 프로그램에서 DoModal 호출로 윈도우가 보이게 된다ShowWindow(SW_HIDE)를 써도 안먹히기는 마찬가지....OnInitDialog()에 아래와 같이 ShowWindowEx() 메소드를 넣어주면 된다 ShowWindowEx(SW_HIDE); 그리고 윈도우 메시지 헨들러 중 WM_WINDOWPOSCHANGING을 추가하여 넣어주면 된다아래는 원문...----------------------------------------------------------------------------------------------------- 아래와 같이 WM_WINDOWPOSCHANGING 메시지 핸들러에서 들어오는 구조체의 플래그를 설정하면 DoModal()로 설정하더라도 윈도우가 보이는.. 더보기
하위폴더 탐색 (재귀호출) 제목은 거창합니다만.... 알고보면 간단한거라는 -ㅂ-ㅋ 1: void CFileSearch::GetFileList( CString strFolder) 2: { 3: 4: // 파일 탐색 필터 정의 - Ini에서 확인 - 변경할 것 5: CString strMusicFilter = ".MP3.OGG.WMA.WAV"; 6: CString strMovieFilter = ".AVI.WMV.MKV.MPEG.MPG"; 7: CString strImageFilter = ".JPEG.JPG.BMP.PNG.GIF"; 8: CString strDocumentFilter = ".TXT"; 9: 10: CFileFind file; 11: BOOL b = file.FindFile(strFolder + "\\*.*"); 12:.. 더보기
Unicode Little-Endian <-> Big-Endian 변환 유니코드에서 한 문자가 Little-Endian또는 Big-Endian으로 정의 되는 것을 볼 수 있다 이는 시스템상의 사용하는 문제로 가끔 변환해 줄 필요가 있는데.... 네트워크 관련 API가 있지만, 해더 파일을 넣어줘야 한다는 이유 하나만으로 쓰기가 싫어졌다 -ㅂ-ㅋ void Trans_Endian(WCHAR *uni) { int nSize = WideCharToMultiByte(CP_UTF8, 0, uni, -1, NULL, 0, NULL, NULL); for (int n = 0; n Big Endian WCHAR high_bit = 0x0000, low_bit = 0x0000; high_bit = (*(uni+n) & 0xFF00) >> 8; low_bit = (*(uni+n) & 0x00FF) 더보기
MP3 ID3v2 Tag 읽기/편집 라이브러리 및 예제 MP3 ID3v2 Tag 읽기 및 편집을 위한 라이브러리 및 예제 이다 일단 시험중이니.. 완성되면 다시 포스팅해야겠다... 더보기
ListCtrl 다중 선택 (Multi Selection)삭제 리스트 컨트롤에서 Multi Selection후 삭제를 할라보니 몇개가 남는다...뭥미;;찾아보니 뒤에서부터 지워라, 인덱스를 만들어 지워라 등등 많았는데...가장 깔끔하게 해결하는 방법을 Liverpool님께서 블로그에 올려두신 것을 보았으니..오호 통제라.. POSITION pos = m_LstSelectList.GetFirstSelectedItemPosition(); if(pos == NULL)return; //처음부터 선택된 값을 해제 한다. while(pos){ int index = m_LstSelectList.GetNextSelectedItem(pos); m_LstSelectList.DeleteItem(index); pos = m_LstSelectList.GetFirstSelectedItemP.. 더보기