学院首页>安全防御>综合安全>Windows SDK编程初探(2)

Windows SDK编程初探(2)

作者: 来源: 添加时间:2006-5-23 8:14:58
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,PSTR szCmdLine,int iCmdShow)

{

  static TCHAR szAppName[]=TEXT("Hello");//注册的窗口类的名称,此处为"Hello"

  WNDCLASS wndclass;//定义了一个窗口类

  wndclass.style=CS_HREDRAW|CS_VREDRAW;

  wndclass.lpfnWndProc=WndProc;//此处关联了定义的消息处理函数

  wndclass.cbClsExtra=0;

  wndclass.cbWndExtra=0;

  wndclass.hInstance=hInstance;//实例句柄

  wndclass.hIcon=NULL;//窗口的图标,我们这里不设置

  wndclass.hCursor=LoadCursor(NULL,IDC_ARROR);//设置光标

  wndclass.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);//画刷

  wndclass.lpszMenuName=NULL;

  wndclass.lpszClassName=szAppName;//类名称

  if(!RegisterClass(&wndclass))//注册窗口

{

  MessageBox(NULL,TEXT("窗口注册失败"),szAppName,MB_ICONERROR);

  return 0;

}

  //下面开始建立窗口

  HWND hwnd;

  hwnd=CreateWindow(szAppName,TEXT("The Hello Program"),

  CW_OVERLAPPEDWINDOW,

  CW_USEDEFAULT,

  CW_USEDEFAULT,

  CW_USEDEFAULT,

  CW_USEDEFAULT,

  NULL,

  hInstance,

  NULL);

  ShowWindow(hwnd,iCmdShow);

  UpdateWindow(hwnd);

//接下来是消息循环,程序不断的从消息队列中取消息,让消息处理函数处理

  while(GetMessage(&msg,NULL,0,0))

  {

TranslateMessage(&msg);

DispatchMessage(&msg);

  }

  return msg.wParam;

}

站内搜索