这程序小人调试好几十次都失败了,求高手指教!!!!
下面是程序代码及出错提示:Dialog01.h 代码:#define IDM_OPEN  10       //1行      
#define IDM_SAVE 11
#define IDM_SAVEAS 12
#define IDM_EXIT  13
#define IDM_SUM   14
#define IDM_DEVIA  15
#define IDM_STDDEVIA  16
#define IDM_SUMHELP  17
#define IDM_DEVIAHELP  18
#define IDM_STDDEVIAHELP  19
#define IDM_ABOUT   20      ////////  //11行 Dialog01.rc 代码:#include<windows.h>      // //// //1行   
#include"Dialog01.h"
Menu MENU DISCARDABLE
{
  POPUP "文件(&F)"
  {
    MENUITEM "打开(&O)\t Ctrl+O",IDM_OPEN
    MENUITEM "保存(&S)\t Ctrl+S",IDM_SAVE
    MENUITEM "另存为(&A)",IDM_SAVEAS
    MENUITEM SEPARATOR                       //// //// //10行   
    MENUITEM "退出(&E)",IDM_EXIT
  }
  POPUP "计算(&S)"      
  {
    MENUITEM "计算总和(&S)",IDM_SUM
    MENUITEM "计算方差(&D)",IDM_DEVIA
    MENUITEM "计算均方差(&T)",IDM_STDDEVIA
  }  POPUP "帮助(&H)"          // //// //20行
  {
    MENUITEM "计算总和帮助(&S)",IDM_SUMHELP
    MENUITEM "计算方差帮助(&D)",IDM_DEVIAHELP
    MENUITEM "计算均方差帮助(&T)",IDM_STDDEVIAHELP
    MENUITEM SEPARATOR
    MENUITEM "关于(&A)", IDM_ABOUT
  }
}
//===============加速键资源
Menu ACCELERATORS                 ////////////////// //// //30行
{
"^O" , IDM_OPEN
    "^s" , IDM_SAVE
}About DIALOG 10,10,100,50
STYLE WS_POPUP|WS_CAPTION|WS_SYSMENU
CAPTION "关于"
FONT 18,"楷体"//
{                            // //// ////////////40行
CTEXT "windows模态对话框",-1,13,10,80,10  
DEFPUSHBUTTON "确定",IDOK,35,30,,30,12//IDOK,35,30,30,12 错 
}
// //=================位图资源=================pic BITMAP "DfydSetB.bmp"   ////// //// //46行   Dialog01.cpp 程序代码:
 
#include<windows.h>            ///////////////// //1行
#include"Dialog01.h"
#include<stdlib.h>
#include<string.h>
BOOL InitWindowsClass(HINSTANCE hInstance);
BOOL InitWindows(HINSTANCE hInstance,int nCmdShow);
LRESULT CALLBACK WndProc(HWND,UINT,WPARAM ,LPARAM );//窗口处理函数
BOOL CALLBACK DlgProc(HWND,UINT,WPARAM ,LPARAM );
//////////==========
HWND hWndMain;                       //////// //10行
HINSTANCE hInst;
HDC hDC;
HDC hdcmem;
HBITMAP hBm;
BITMAP bm;
int iY=80;
int iX=100;
int iWindowWidth,iWindowHeight;
char cUpWarn[]="已经达到顶部了,不能再向上移动了";
char cDownWarn[]="已经达到底部了,不能再向下移动了";        ///////////////20行   
char cLeftWarn[]="已经达到左底部了,不能再向左移动了";
char cRightWarn[]="已经达到右底部了,不能再向右移动了";
char hMenu[20];
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPreInstance,
   LPSTR lpCmdLine,int nCmdShow)
{  MSG Message;
  hBm=LoadBitmap(hInstance,"pic");
  GetObject(hBm,sizeof(BITMAP),(LPVOID)&bm);     ///////////////30行  
  iWindowWidth=2*bm.bmWidth;
  iWindowHeight=2*bm.bmHeight;
  HACCEL hAccel;
  if(!InitWindowsClass(hInstance))//hInstance从主函数传过来的
     return FALSE;
  if(!InitWindows(hInstance,nCmdShow))
  {   MessageBeep(0);//若注册失败则发出警告
  return FALSE;
  }
  hInst=hInstance;
  hAccel=LoadAccelerators(hInst,hMenu);      /////////////////40行  
  while(GetMessage(&Message,0,0,0))//只有一个当前实例句炳
  {   
  if(!TranslateAccelerator(hWndMain,hAccel,&Message))
  {
        TranslateMessage(&Message);
DispatchMessage(&Message);

  }
  }                     //////////////////////////////////////////50行  
return Message.wParam;
}
///+++++++++++++++++++++===============================
LRESULT WINAPI WndProc(HWND hWnd,UINT message,WPARAM wParam,LPARAM lParam)
{ PAINTSTRUCT ps;
  switch(message)
  {
  case WM_COMMAND:
  switch(LOWORD(wParam))
  {                           //////////////////////////////////////60行  
  case IDM_OPEN:
  MessageBox(hWnd,"文件已经打开","文件打开",MB_OK);
  break;
  case IDM_SAVE:
  MessageBox(hWnd,"文件保存成功","文件保存",MB_OK);
  break;
  case IDM_ABOUT:
  DialogBox(hInst,"About",hWnd,(DLGPROC)DlgProc);
  break;
  }                 /////////////////////////////////////70行  
  break;
  case WM_LBUTTONDOWN:
   iY=iY-1;      //位土高度
   InvalidateRect(hWnd,NULL,1);
   break;
  case WM_RBUTTONDOWN:
  iY=iY+1;
      InvalidateRect(hWnd,NULL,1);
  break;
  case WM_KEYDOWN:                       ////////////////////80行  
  switch(wParam)
  {
  case VK_UP:
  iY=iY-1;
  break;
  case VK_DOWN:
  iY=iY+1;
  break;
  case VK_RIGHT:
  iX=iX+1;                 //////////////////90行  
  break;
  case VK_LEFT:
  iX=iX-1;
  break;
  }
  InvalidateRect(hWnd,NULL,1);
  break;
  case WM_CREATE:
       hDC=GetDC(hWnd);
   hdcmem=CreateCompatibleDC(hDC);  ///////////////100行  
   ReleaseDC(hWnd,hDC);
  case WM_PAINT:
  hDC=BeginPaint(hWnd,&ps);
  if((iY>0&&iY<iWindowHeight/2)&&(iX>0&&iX<iWindowWidth/2))
  {
    SelectObject(hdcmem,hBm);
BitBlt(hDC,iX,iY,bm.bmWidth,bm.bmHeight,hdcmem,0,0,SRCCOPY);
  }
  else if(iY<=0||iX<=0)
  { if(iY<=0)               ////////////////////////////110行  
      //TextOut(hDC,0,0,cUpWarn,sizeof(cUpWarn));
  MessageBox(hWnd,cUpWarn,"超出上框警告",MB_OK);
    if(iX<=0)
   TextOut(hDC,0,0,cLeftWarn,sizeof(cLeftWarn));
  }
   else
   { if(iY>=iWindowHeight/2)
      TextOut(hDC,0,0,cDownWarn,sizeof(cDownWarn));
     else
         TextOut(hDC,0,0,cRightWarn,sizeof(cRightWarn)); /////////////////120行  
   }
  EndPaint(hWnd,&ps);
      break;
  case WM_DESTROY:
  PostQuitMessage(0);
   return(0);
  default:
  return(DefWindowProc(hWnd ,message,wParam,lParam));
  }
 return 0;       ////////////////////////////////130行  
}
//========================================================
BOOL InitWindowsClass(HINSTANCE hInstance)
{
WNDCLASS WndClass;
  WndClass.cbClsExtra=0;
  WndClass.cbWndExtra=0;
  WndClass.hbrBackground=(HBRUSH)(GetStockObject(WHITE_BRUSH));
  WndClass.hCursor=LoadCursor(NULL,IDC_ARROW);
  WndClass.hIcon=LoadIcon(NULL,"END");  /////////////////////////////140行  
  WndClass.hInstance=hInstance;
  WndClass.lpfnWndProc=WndProc;
  WndClass.lpszClassName="wndfill";
  WndClass.lpszMenuName="Menu";
  WndClass.style=CS_HREDRAW|CS_VREDRAW;
  hMenu[20]=Menu;
  return RegisterClass(&WndClass);
  
}
BOOL InitWindows(HINSTANCE hInstance,int nCmdShow)  ///////////////150行  
{
 HWND hWnd;
     hWnd=CreateWindow("wndfill","第一个事例",WS_OVERLAPPEDWINDOW|WS_VSCROLL|
                                         WS_HSCROLL,//|WS_POPUP,
              CW_USEDEFAULT,0,
  CW_USEDEFAULT,0,
  NULL,NULL,
  hInstance,NULL);
if(!hWnd)
return FALSE;                  //////////////////////////160行  
hWndMain=hWnd;
ShowWindow(hWnd,nCmdShow);//SW_SHOWNOACTIVE
UpdateWindow(hWnd);
return TRUE;
}LRESULT CALLBACK DlgProc(HWND hdlg,UINT Message,WPARAM wParam,LPARAM lParam)
{
   switch(Message)
   {                             ////////////////////170行  
   case WM_INITDIALOG:
   return 1;
   case WM_COMMAND:
   switch(LOWORD(wParam))
   {
   case IDOK:
   EndDialog(hdlg,0);
   return 1;
   }
   break;                     ////////////////////////////////180行  
  case WM_CLOSE:
       EndDialog(hdlg,0);
   return 1;
   }
   return 0;}                    ////////////////////////////////////187行  
出错提示:--------------------Configuration: Dialog01 - Win32 Debug--------------------
Compiling resources...
C:\Program Files\Microsoft Visual Studio\MyProjects\VC++\Dialog01\Dialog01.rc (42): error RC2108 : expected numerical dialog constant
Error executing rc.exe.Dialog01.exe - 1 error(s), 0 warning(s)