본문 바로가기

프로그래밍/Windows API30

트레이 처리 - 잘 정리됨. 고수닷넷 - 데미소다오렌지님 1. 트레이 통지와 관련된 함수와 파라미터BOOL WINAPI Shell_NontifyIcon(DWORD dwMessage, PNOTIFYICONDATA pnid); dwMessage로는 다음과 같은 값을 입력할 수 있습니다. NIM_ADD : 트레이에 새로운 아이콘 추가 NIM_DELETE : 트레이 영역의 아이콘 제거 NIM_MODIFY : 트레이 영역에 있는 아이콘 수정 typedef struct _NOTIFYICONDATA { DWORD cbSize; HWND hWnd; UINT uID; UINT uFlags; UINT uCallbackMessage; HICON hIcon; char szTip[64]; } NOTIFYICONDATA, *PNOTIFYICONDATA; c.. 2009. 7. 19.
[MFC] 트레이 아이콘 등록 출처 : http://hotangs.tistory.com/28 윈도우 우측 하단에 트레이 아이콘을 등록하는 방법이다. 우선 프로젝트에 현재 트레이 상태를 알수 있는 BOOL 변수를 선언한다. Protected 에 선언 변수 이름은 m_bIsTrayIcon 로 하겠다. 다음 트레이아이콘을 등록하는 함수를 만든다. 함수 이름은 RegistTrayIcon 로 하겠다. Private 로 선언 그리고 코딩한다. void CTrayDlg::RegistTrayIcon() { NOTIFYICONDATA nid; nid.cbSize = sizeof(nid); nid.hWnd = m_hWnd; // 메인 윈도우 핸들 nid.uID = IDR_MAINFRAME; // 아이콘 리소스 ID nid.uFlags = NIF_MES.. 2009. 7. 17.
[MFC] 부모창 최소화시 자식창이 함께 최소화되는것을 방지 출처: http://reister.tistory.com/entry/%EB%B6%80%EB%AA%A8%EC%9C%88%EB%8F%84%EC%9A%B0%EB%A5%BC-%EC%B5%9C%EC%86%8C%ED%99%94%ED%95%B4%EB%8F%84-%EC%9E%90%EC%8B%9D%EC%9C%88%EB%8F%84%EC%9A%B0%EA%B0%80-%EC%B5%9C%EC%86%8C%ED%99%94%EB%90%98%EC%A7%80-%EC%95%8A%EA%B2%8C 모달리스 대화창을 생성할때 enChatDlg->Create(IDD_ENCHAT,CWnd::GetDesktopWindow()); 이런식으로 부모의 핸들을 데스크탑 윈도우 값으로 주면 됩니다~ 주의! 부모 윈도우를 닫을때 직접 자식윈도우를 delete 해.. 2009. 7. 17.
CMainFrame::LoadFrame 에러 발생시 체크포인트 CMainFrame::LoadFrame 에러 발생시 체크포인트 loadframe 호출후 false 리턴하게 되는데 여기에 break point 지정하고 디버그 실행하면 trace가 찍히는걸 보고 에러를 처리해도 되고...... 내 경우에는.. rc 를 열어서 스트링테이블을 추가해줬더니 해결됨. (에러메세지: failed to load indicator string 0xE701) rc를 열어서 스트링테이블을 추가하면 에러가 날수도있는데 에러가 나는경우에는 리소스뷰에서 직접 수정하면 된다. STRINGTABLE BEGIN ID_INDICATOR_EXT "EXT" ID_INDICATOR_CAPS "CAP" ID_INDICATOR_NUM "NUM" ID_INDICATOR_SCRL "SCRL" ID_INDICAT.. 2009. 7. 17.