Programming/Tips(C++,C#)143 SendMessage, PostMessage, SendMessageTimeout *SendMessage usage : SendMessage(HWND hWnd,UINT uMsg, WPARAM wParam, LPARAM lParam); 해당 메시지를 메시지 큐가 아닌 해당 프로시저에 바로 던져서 처리하도록 한다. 보낸 메시지를 정확하게 처리할 수 있다. 다만 해당 메시지가 정확하게 처리될 때꺼정 block상태다. 그리고.. 메시지 큐를 무시하고 바로 프로시저에 메시지를 던져주게 되므로... 남용하면 좋지않다. -_-a... 자칫하면 프로그램이 죽을 수 있다는 치명적인 단점이 존재한다. 특히.. 스레드->스레드로 SendMessage는... 할말이 없다... *PostMessage usage : PostMessage(HWND hWnd, UINT uMsg, WPARAM wParam, LPA.. 2010. 3. 11. wcscat, wcstok등을 wcscat_s, wcstok_s로 바꾸기 wcscat (or strcat) char *strcat( char *strDestination, const char *strSource ); wchar_t *wcscat( wchar_t *strDestination, const wchar_t *strSource ); Parameters strDestination Null-terminated destination string. strSource Null-terminated source string. wcscat_s(or strcat_s) errno_t strcat_s( char *strDestination, size_t numberOfElements, const char *strSource ); errno_t wcscat_s( char *strDestin.. 2010. 3. 10. wcstombs -> wcstombs_s 로 바꾸기 size_t wcstombs(char* _Dest, const wchar_t* _Source, size_t _MAXCOUNT); 를 그냥 쓰면... VC++ 컴파일러가 질알한다-_-.. wcstombs_s로 바꾸라고.. 기찮다고.. -_-.. 아님 좀 쓰기 편하게 만들어두던가.. 하여간 저걸 바꾸려면 wcstombs_s가 머머인지 봐야겠지 errno_t wcstombs_s(size_t* pRetVal, char* _Dest, size_t sizeBuf,const wchar_t* _Source, size_t count); pRetVal : 복사된 결과값 _Dest : 복사될 스트링 sizeBuf : 복사할 버퍼 크기 _Source : 복사할 스트링 count : 얼마나 복사할 것인가 참조 : http://.. 2010. 3. 10. 걍 메시지 후킹하기.. 이것도 까먹지 않기 위해서 적어둔다.. NDPROC pOldProc = NULL; //CALLBACK함수 만들자.. -_- LRESULT CALLBACK WindowProcFunc(HWND hWnd,UINT uMsg, WPARAM wParam, LPARAM lParam){ if( uMsg == Message){ //todo } return CallWindowProc(pOldProc,hWnd,uMsg,wParam,lParam); } 를 작성한 후에.. OnCreate시에.. 다음과 같이 작성한다. if( pCombo != NULL){ pOldProc = (WNDPROC)::SetWindowLong(pCombo->GetSafeHwnd(),GWL_WNDPROC,(LONG)WindowProcFunc); } 여기.. 2010. 2. 25. HWND를 가지고 CWND 얻어오기.. CWND를 가지고 HWND를 가져오는 것은.. HWND hWnd = CWND->GetSafeHWnd()를 하면 되지만.. (다른 방법으로도 핸들을 가져올 수 있지만.. 저 방법이 가장 안전할듯?) 그 반대는 오늘 검색해보다 알았다.. CWND cWnd = CWND::FromHandle(HWND); 라는 것을.. 까먹지 않게.. 자주 정리해야지... 이런것들... 2010. 2. 25. 02/05 - Debugging *디버거의 프로세스 실행권한 - 무지 높음. *MS에 보고하기 : 호출스택정보등이 들어가있음. 이 프로세스가 사용중인 메모리의 데이터의 내용을 보낸다는거다... -0-a *boot.ini [boot loader] timeout=nn default=.... [operating systems] ...=".." //여기다 어디어디에다 디버깅 연결 해주어야한다. *사용자는 아무것도 모른다고 생각하고 UI를 작성할 것 *닥터왓슨 : drwtsn32, 이거랑 윈디버거 조합하자 *http://cafe.naver.com/windev *프리렉가서 퍼오기 2009. 2. 5. 이전 1 ··· 14 15 16 17 18 19 20 ··· 24 다음 728x90