  ஥ MFC AppWizard (exe)
 Step1) 롨ࠥ Dialog, Language - English [USA]
 Step2) ࠥ About
 Step3) 롨ࠥ Shared Dll  Static ...
 Step4) 塞  ᮢ:
         CApp, CDlg, Dlg.h, Dlg.cpp
 Finish

塞  ஥ Dlg.cpp  Dlg.h  㤠塞   ᪠ 䨧᪨.
 䠩,  ஬ 室  CApp,
 #include "Dlg.h"  #include "WndDlg.h"
塞  CApp::InitInstance , 稭  CDlg dlg;  
 ⮣ ⠢塞 ப  䠩 !1.dat
㥬  ४  ஥⮬ 䠩:
 dlgbars.*, mdlsmain.*, modeless.*, wnddlg.*  塞   ஥.
२뢠 ID   Dialog  IDR_MAIN

塞 䠩 myproject.clw - Class Wizard.
⮬ 室   ClassWizard  ᮧ  .

 CModelessMain.OnInitDialog  㤠 ਨ  ᤥ
 㯭 StatusBar  ToolBar!
   CenterWindow()  ⠭ ᢮  .

 IDR_MAIN (Dialog)   .
ࠡ稪  㦭 ⠢  CWndDlg !!!
 CWndDlg     UPDATE   ⤥  
 Enable  Disable!!!

 resources   ToolBar  २   IDR_MAIN.
 wnddlg.cpp    ToolBar ->  auIDToolBar  auIDStatusBar.
᫨ ⨬, ⮡ 뫠  /몫 ToolBar  StatusBar
 , 㦭      resourses=ID_VIEW_STATUS_BAR
 ID_VIEW_TOOLBAR! ࠡ稪   㦥 !

᫨  ToolBars  ⠭⭮ ࠧ ( 16x15, , ਬ, 32x32),
   䠩 mdlsmain.cpp  ப:
m_toolBar.LoadBitmap(m_nIDBitmap);
m_toolBar.SetButtons(m_lpaIDToolBar, m_cIDToolBar);
⠢ 䠩 !2.dat   祭 (32)!
ࠧ㬥,   ᨬ!

᫨ ⨬, ⮡ ᭨  ToolBars 뫠 , 㦭 
 mdlsmain.cpp  ப
 m_toolBar.SetBarStyle(m_toolBar.GetBarStyle() |
		CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC)
ࠬ BRS_BORDER_BOTTOM!

 OnClicks    Class CWndDlg?!

,  ᢮.

   -> IDR_MAIN.    㦭 㪠 
 Properties of Dialog Frame!

᫨ ⨬, ⮡  Status Bar 﫠 ଠ ->
㦭  resources  String      + ப.
 ⮬ ப  㬮砭   String, 
  AFX_IDS_IDLEMESSAGE ( 㦥 ).
---
塞  StdAfx.h (⮡ 뫮 㯭   䠩!!!)
 //FGG
 #define DirMaxLen 1024
 #define StrMaxLen 1024
 //End FGG
---
  । ४ਨ  exe-䠩!
  砫 ᭮ 䠩 cpp ⠢塞:
  char AppDir[DirMaxLen];
  ᠬ 砫 InitInstance ⠢塞:
  char str1[DirMaxLen];
  char str1a[DirMaxLen];
  char str1b[DirMaxLen];
  char str1c[DirMaxLen];
  char str1d[DirMaxLen];
  InitInstance । //Create main window, TRY ⠢塞:

  //Get Directory of exe file
  GetModuleFileName(AfxGetResourceHandle(), str1, DirMaxLen);
  _splitpath(str1, str1a, str1b, str1c, str1d);
		
  strcpy(AppDir, str1a);
  strcat(AppDir, str1b);
---
  CFGGCFG:
 㥬 䠩 fggcfg.cpp  fggcfg.h  ४ ஥.
 塞  ஥  VC.
    䠩 cpp 塞 ப:
  #include "fggcfg.h"  CFGGCfg* fggcfg=NULL;
  #define CfgMaxParam 3 (  3 㦭  ᢮ ⢮ ࠬ஢
                          䨣樨).
  㣨 䠩,   뫪  fggcfg , 㦭 :
  #include "fggcfg.h"  extern CFGGCfg* fggcfg;

  InitInstance । //Create main window, TRY ⠢塞:
  //Preparing configuration
  strcpy(str1,AppDir);
  strcat(str1,"scs_c.cfg");
	
  static CFGGCfg CSCS_CCfg(CfgMaxParam, StrMaxLen, str1);
	
  fggcfg=&CSCS_CCfg;
  if (CSCS_CCfg.Load()!=0) default_cfg();
  check_cfg();

   cpp 䠩 塞  㭪樨:
  void CApp::default_cfg(void) 
  {
   fggcfg->Change(1," 123");
   fggcfg->Change(2," http://scs");
   ...
  }
  void CSCS_CApp::check_cfg(void)
  {
  }
   h 䠩  ।  CApp 塞  public
 ࠧ ᫥ CApp(); : 
  void default_cfg(void);
  void check_cfg(void);
 
 ⮡  ⨬ 㭪  뫮   㣨 ᮢ
   cpp 䠩  ᠬ 砫 塞:
  CWndDlg* pMainDlg=NULL;
   InitInstance ᫥ ப CWndDlg* pMainWnd = new CWndDlg; ⠢塞:
  pMainDlg=pMainWnd;
---
 SaveCFG:
  wnddlg.h  public 塞:
  void SaveCFG(void);

  wnddlg.cpp 塞:
  #include "fggcfg.h"
  extern CFGGCfg* fggcfg;

  void CWndDlg::SaveCFG(void)
  {
         祭 X  Y ...
  	fggcfg->Save();
  }

  wnddlg.cpp  CWndDlg::OnClose() 塞:
  SaveCFG();

  CApp  OnExit (᫨   ) 塞:
  pMainDlg->SaveCFG();
  exit(0);
---
 Set Window Position: 
  CModelessMain::OnInitDialog 塞 
    CenterDialog  SetWindowPos:
  SetWindowPos(NULL,atoi(fggcfg->Get(1)),atoi(fggcfg->Get(2)),
	       0,0,SWP_NOSIZE);

   砫 ⮣ 䠩:
  #include "fggcfg.h"
  extern CFGGCfg* fggcfg;

  :
   㬮砭   ஥ ᫨  ⠭
    (0,0),   ᫥饬 ᪥  業!
  ⮡ ⮣ , ..  뫮  ⠭  (0,0),
  㦭  properties of main dialog window ⠭ XPos=1; YPos=1 !!!
  (⠭ ᪨)
---
  resources 塞 Dialog -> IDD_ABOUT
 室  Class Wizard   IDD_ABOUT ᮧ  CAbout.
 塞 About.cpp  About.h  㦥 ⮢!
   cpp 䠩  砫 塞 
  bool IAboutBox;

 । ⨥    InitInstance(TRY)
  IAboutBox=true;
  CAbout about;
  about.DoModal();
  IAboutBox=false;

 塞  ࠡ稪 
  CAbout about;
  about.DoModal();
---
 ⮡  뫮 ࠡ  Variables   , 㦭 
  䠩 wnddlg.cpp
  void CWndDlg::DoDataExchange(CDataExchange* pDX)
  {
	CModelessMain::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CWndDlg)
	//}}AFX_DATA_MAP
  }
   䠩 wnddlg.h  ப
  protected:
	virtual BOOL OnInitDialog();
 㦭 ⠢ ப:
  	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV support  
