kyuseo의 게임 프로그래밍

다이알로그(Dialog) 프로그램을 트레이(Tray)에서 실행 하는 방법 본문

C++ 개발

다이알로그(Dialog) 프로그램을 트레이(Tray)에서 실행 하는 방법

kyuseo 2007. 12. 29. 20:15

 

개요..

 

프로그램이 최초 실행 시 트레이에서 실행되는 메신저 프로그램처럼, 창으로 뜨지 않고 시작하는 프로그래밍 방법을 설명합니다.

 

 

핵심..

 

화면에 보이지 않는 모달리스 다이알로그(Modaless Dialog)로 개발합니다.

 

 

사용방법..

 

0. 헤더에 선언한다.

 

    CNorazoClientLauncherDlg* m_pDlg;

 

 

1. 다이알로그를 모달리스윈도우로 생성한다.

 

BOOL CNorazoClientLauncherApp::InitInstance()

{

    ...

    ...

    m_pDlg = new CNorazoClientLauncherDlg;

    m_pDlg->Create( CNorazoClientLauncherDlg::IDD );

    m_pDlg->ShowWindow( SW_HIDE );

 

    m_pMainWnd = m_pDlg;

 

    return TRUE;

}

 

 

2. 프로그램에 메모리 제거 코드를 추가한다.

 

int CNorazoClientLauncherApp::ExitInstance()

{

    delete m_pDlg;

    

    return CWinApp::ExitInstance();

}

 

 

3. 다이알로그 옵션의 Visible 을 FALSE로 변경 한다.

 

 

 

4. 트레이 관련 코드를 삽입 한다.

 

CSystemTray 등 공개 코드를 이용하여 트레이 관련 코드를 삽입한다.

 

 

5. 종료

 

모달리스 다이알로그이므로 프로그램 종료는 CDialog::OnCancel() 을 호출하지 말고 DestroyWindow() 함수를 호출한다.

 

 

이와 같은 방식으로 개발한 프로그램..

 

지모콘 프로그램을 이와 같은 방식으로 개발하였습니다.

바로가기