소스는 정말 간단하다.... 두줄만 추가하면된다. BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs) { if( !CMDIFrameWnd::PreCreateWindow(cs) ) return FALSE; cs.cx = 640; cs.cy = 580; // TODO: CREATESTRUCT cs를 수정하여 여기에서 // Window 클래스 또는 스타일을 수정합니다. return TRUE; } 그럼 정의를 찾아보자. typedef struct tagCREATESTRUCT { LPVOID lpCreateParams; HANDLE hInstance; HMENU hMenu; HWND hwndParent; int cy; int cx; int y; int x; LONG styl..
// CString -> wchar_t * -_-;;;;; 이상함..;; CStringW aaa(_T("hello!")); wchar_t *a = (wchar_t *)aaa.GetBuffer(); MessageBoxW(NULL, a, a, 0); //이것도.... 되긴되는데..;;;; wchar_t wTemp[1024] = L"\0"; MultiByteToWideChar(CP_ACP, 0, m_szNotice,m_szNotice.GetLength(),wTemp,1024); // wchar_t * -> CString 변환 wchar_t *aaa = L"Hello, World!"; CString temp(aaa); m_szText = temp;
1. 개요 문제점 : 8개의 모니터에 플래쉬 파일을 하나 올릴려고 합니다. 앞의 'MFC flash 연동하기'를 보시면 간단히 해결을 할 수 있습니다. 그러나. 실제 프로그램을 모니터 8개에 실행을 시키다보면 문제가 발생합니다. 그 문제점은 flash 의 속도가 현저히 느려지게 된다는 것입니다. 1. flash의 속도를 좌지우지 하는 것은 무엇인가? 2. flash의 문제(?) 3. MFC(?) 에서 수정할 수 있는 문제? 즉, 어디서 문제가 발생하는지 정확히 찾아보자. 1. 첫번째 방안으로 MFC 내에서 Thread 를 돌리도록 하였습니다.(과연?) 1. 프로그램 구조상 flash.swf 파일에 관하여서 "Flash Player" 가 할 수 있는 일은 MFC에서 아무런 꺼리낌 없이 해결 할 수 있습니다..
CString -> char (포인터 값으로 저장) CString str = "Hello"; char * ch = NULL; ch = (LPSTR)(LPCSTR)str; 또는 ch = str.GetBuffer(str.GetLength()); // str의 포인터 값을 ch에 저장한다. CString -> char (배열에 복사) CString str = "Hello"; char ch[100] = {0,}; memcpy(ch, (LPSTR)(LPCSTR)str, str.GetLength()); // NULL을 만나기 전까지의 문자를 str에서 ch로 복사한다. char -> CString char ch[] = "Hello"; CString str; str.Format("%s", ch); // NULL을 만..
// 모달로 띄우기 //CProcessSetting dlg; //dlg.DoModal(); // 모달리스로 띄우기 CProcessSetting *dlg=new CProcessSetting(); dlg->Create(IDD_SETTING,this); dlg->ShowWindow(SW_SHOW); 간단!
atoi() 함수는 .... wtoi() 함수로 유니코드 문자를 숫자로 변환이 가능하다! 문자열 안에서 문자열 검색하는 함수! wcsstr() WCHAR *pTestBuffer, CardIndex[5]; POINT point; memset(TextBuffer, 0, sizeof(TextBuffer) ); memset(CardIndex, 0, sizeof(CardIndex) ); if( wcsstr(TextBuffer, L"test MousePoint") != NULL) // 있음 { pTestBuffer = TextBuffer+15; // 길이만큼 wcscpy( CardIndex, pTestBuffer ); point.x = _wtoi(CardIndex); pTestBuffer +=2; point.y =..
C 함수의 기본이니 한번 정리 하고 넘어가는것도 좋을듯하여 정리해본다 출처 http://blog.naver.com/marine1959?Redirect=Log&logNo=150028864646 http://www.devpia.com/Forum/BoardView.aspx? no=155722&ref=155692&page=5&forumname=VC_QA&stype=&KeyW=memset+%bb%e7%bf%eb%c7%cf%b4%c2+%c0%cc%c0%af&KeyR=titlecontent memcpy [메모리를 복사합니다] void *memcpy(void *dest, const void *src, size_t count) Return Value 성공 - 복사된 메모리 주소(dest 매개변수) 반환 실패 - 없음 p..
// char to LPCWSTR void CharToWChar( const char* pstrSrc, wchar_t pwstrDest[] ) { int nLen = ( int )strlen( pstrSrc ) + 1; mbstowcs( pwstrDest, pstrSrc, nLen ); } // LPCWSTR to char void WCharToChar( const wchar_t* pwstrSrc, char pstrDest[] ) { int nLen = ( int )wcslen( pwstrSrc ); wcstombs( pstrDest, pwstrSrc, nLen + 1 ); } ///////////////////////////////////////////////////////////////////////..
WideCharToMultiByte(CP_ACP, 0, WCHARptr, -1, CHARptr, CHARptr이 가리키는 버퍼사이즈, NULL, NULL); -- 2002. 10. 29. 덧붙힘 중간에 인자 -1 이 아니고 WCHAR 문자열의 길이다... WCHAR 문자열 길이는 wcslen 로 구할수 있다. size_t wcslen( const wchar_t *string ); 그리고 저거 말고 바꿔주는게 이것도 있지요~ size_t wcstombs( char *mbstr, const wchar_t *wcstr, size_t count ); 반대역할 하는 함수는 int MultiByteToWideChar( UINT CodePage, // code page DWORD dwFlags, // characte..
recv ( s, (char *)buf, len*2, flags ); ;; 답변이 너무 간단한가요?? 유니코드는 2바이트씩이지요.. 포인터 캐스팅 해주고.. 걍 2배로 받으면 됩니다;;; len 이 글자수가 아닌 바이트라면.. recv ( s, (char *)buf, len, flags ); 그냥 이렇게 받으면 되구요.. 허무 ㅜㅜ.... 뭐 하나 알았다!! 그래도 훗! 유니코드 항상 검색하잣! ㅠㅠ!!
1. 개요 지금 부터 무엇을 설명 하려고 하는가!? 아래의 그림을을 잘 보길 바랍니다. 프로그램의 실행시 환경설정을 해주는 부분입니다. 1. 가로, 세로 -> 현재 컴퓨터의 해상도를 받아와 출력함 2. 모니터 개수 -> User 가 1~8까지 입력을 합니다.(모니터 최대8개까지) 3. 아래부분에는 flash 를 최대 4개까지 연결이 가능한데 경로를 적습니다. 4. Flash Count -불러들일 플래쉬(swf) 의 수를 라디오 버튼으로 입력(1~4) 프로그램의 환경 설정이 끝이 나고 나서 실행의 화면 모습입니다. Ex> 모니터1개, 플래쉬 2개 1. 1개의 모니터에 2개의 플래쉬 화면이 뜬 모습입니다. * ( 이 이외에도 모니터는 1~8개까지 설정할수있으며 플래쉬(swf) 파일의 갯수는 최대 4개까지 설..
이거 하나 에러나는데 엄청난 -_-ㅋ 삽질을 했다. 지금 새벽 4시니깐 ㅡ.ㅡa 분명 저녁먹고나서 계속 IniFile 클래스를 만지작 거렸으니... 8시간동안 붙잡고 있었다는 ㅜㅜ... 지금 부터 그 문제를 - 알아보자. ! /////////////////////////////////////////////////////// // vs2005 MFC 를 이용하였습니다. /////////////////////////////////////////////////////// // CString 를 사용함! CString bitsIndexStr, zeroStr, oneStr; CString headStr; // fscanf() 를 이용하여 CString 의 변수에 값을 넣음 fscanf(stream, "%S", h..