| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 575 人关注过本帖
标题:帮我找错 谢谢了
只看楼主 加入收藏
lyt198481234
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2008-2-25
收藏
 问题点数:0 回复次数:4 
帮我找错 谢谢了
#include <windows.h>
#include <stdio.h>

LRESULT CALLBACK WinSunProc(
  HWND hwnd;
  UINT uMsg;
  WPARAM wParam;
  LPARAM lParam;
);

int WINAPI WinMain(
  HINSTANCE hInstance,
  HINSTANCE hPrevInstance,
  LPWSTR lpCmdLine,
  int nCmdShow
)
{
    WNDCLASS wndcls;
    wndcls.cbClsExtra=0;
    wndcls.cbWndExtra=0;
    wndcls.hbrBackground=(HBRUSH)GetStockObject(HOLLOW_BRUSH);
    wndcls.hCursor=LoadCursor(HULL,IDC_APPSTARTING);
    wndcls.hIcon=LoadIcon(NULL,IDI_ERROR);
    wndcls.hInstance=hInstance;
    wndcls.lpfnWndProc=WinSunProc;
    wndcls.lpszClassName="sunxin2006";
    wndcls.lpszMenuName=NULL;
    wndcls.style=CS_HREDRAW | CS_VREDRAW;
    RegisterClass(&wndcls);
    
    HWHD hwnd;
    hwnd=CreateWindow("sunxin2006","http://www.sunxin.prg",
        WS_OVERLAPPEDWINDOW,0,0,600,400,NULL,NULL,hInstance,NULL);

    ShowWindow(hwnd,SW_SHOWNORMAL);
    UpdateWindow(hwnd);

    MSG msg;
    while (GetMessage(&mag,NULL,0,0))
    {
        TranslateMessage(&msg);
        DispatchMessage(&msg);
    }
    return 0;
)

LRESULT CALLBACK WinSunProc(
  HWND hwnd;
  UINT uMsg;
  WPARAM wParam;
  LPARAM lParam;
)
{
    switch (uMsg)
    {
    case WM_CHAR:
        char szChar[20];
        sprintf(szChar,"char code is &d",wParam);
        MessageBOX(hwnd,szChar,"char",0);
        break;

    case WM_LBUTTONDOWN:
        MessageBox(hwnd,"mouse clicked","message",0);
        HDC hdc;
        hdc=GetDC(HWND,hdc);
        TextOut (hdc,0,50,"程序之家",strlen("程序之家"));
        ReleaseDC (hwnd,hdc);
        break:
    case WM_PAINT:
        HDC hDC;
        RAINTSTRUCT ps;
        hDC=Beginpaint (hwnd,&ps);
        TextOut (hDC,0,0,"http://www.,strlen("http://WWW.));
        EndPaint(hwnd,&ps);
        break;
    case WM_CLOSE:
            if(IDYES=MessageBox(hwnd,"是否真的结束?","message",MB_YESNO));
            {
                DestroyWindow(hwnd);
            }
            break;
    case WM_DESTROY:
        PostQuitMessage(0);
        break;
    default:
        return DefWindowProc(hwnd,uMsg,wParam,lParam);
    }
    return 0;
}



上面的代码不知道哪里错了 就是运行不起来 求各位帮帮忙指点一下
2008-02-26 03:17
天使梦魔
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:37
帖 子:564
专家分:2754
注 册:2007-8-29
收藏
得分:0 
错误提示呢?
代码是从哪抄的?
MessageBOX这些函数对大小写是非常敏感的MessageBox
HDC hDC;这类定义为什么要放在消息循环中?
也就是说每处理一次WM_LBUTTONDOWN事件就定义一次,然后重绘一次.

看这种错误还要下个编译器来,真是麻烦
2008-02-26 09:12
天使梦魔
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:37
帖 子:564
专家分:2754
注 册:2007-8-29
收藏
得分:0 
你错的太多了,这是DEVC++标准工程示范.一看就明白了.
HWHD hwnd;//如果我没记错,句柄应该是HWND吧.
本来想帮你的,但这类错误太多了.不想看了,还是自行处理吧
==================================================
#include <windows.h>

/*  Declare Windows procedure  */
LRESULT CALLBACK WindowProcedure (HWND, UINT, WPARAM, LPARAM);

/*  Make the class name into a global variable  */
char szClassName[ ] = "WindowsApp";

int WINAPI WinMain (HINSTANCE hThisInstance,
                    HINSTANCE hPrevInstance,
                    LPSTR lpszArgument,
                    int nFunsterStil)

{
    HWND hwnd;               /* This is the handle for our window */
    MSG messages;            /* Here messages to the application are saved */
    WNDCLASSEX wincl;        /* Data structure for the windowclass */

    /* The Window structure */
    wincl.hInstance = hThisInstance;
    wincl.lpszClassName = szClassName;
    wincl.lpfnWndProc = WindowProcedure;      /* This function is called by windows */
    wincl.style = CS_DBLCLKS;                 /* Catch double-clicks */
    wincl.cbSize = sizeof (WNDCLASSEX);

    /* Use default icon and mouse-pointer */
    wincl.hIcon = LoadIcon (NULL, IDI_APPLICATION);
    wincl.hIconSm = LoadIcon (NULL, IDI_APPLICATION);
    wincl.hCursor = LoadCursor (NULL, IDC_ARROW);
    wincl.lpszMenuName = NULL;                 /* No menu */
    wincl.cbClsExtra = 0;                      /* No extra bytes after the window class */
    wincl.cbWndExtra = 0;                      /* structure or the window instance */
    /* Use Windows's default color as the background of the window */
    wincl.hbrBackground = (HBRUSH) COLOR_BACKGROUND;

    /* Register the window class, and if it fails quit the program */
    if (!RegisterClassEx (&wincl))
        return 0;

    /* The class is registered, let's create the program*/
    hwnd = CreateWindowEx (
           0,                   /* Extended possibilites for variation */
           szClassName,         /* Classname */
           "Windows App",       /* Title Text */
           WS_OVERLAPPEDWINDOW, /* default window */
           CW_USEDEFAULT,       /* Windows decides the position */
           CW_USEDEFAULT,       /* where the window ends up on the screen */
           544,                 /* The programs width */
           375,                 /* and height in pixels */
           HWND_DESKTOP,        /* The window is a child-window to desktop */
           NULL,                /* No menu */
           hThisInstance,       /* Program Instance handler */
           NULL                 /* No Window Creation data */
           );

    /* Make the window visible on the screen */
    ShowWindow (hwnd, nFunsterStil);

    /* Run the message loop. It will run until GetMessage() returns 0 */
    while (GetMessage (&messages, NULL, 0, 0))
    {
        /* Translate virtual-key messages into character messages */
        TranslateMessage(&messages);
        /* Send message to WindowProcedure */
        DispatchMessage(&messages);
    }

    /* The program return-value is 0 - The value that PostQuitMessage() gave */
    return messages.wParam;
}


/*  This function is called by the Windows function DispatchMessage()  */

LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
    switch (message)                  /* handle the messages */
    {
        case WM_DESTROY:
            PostQuitMessage (0);       /* send a WM_QUIT to the message queue */
            break;
        default:                      /* for messages that we don't deal with */
            return DefWindowProc (hwnd, message, wParam, lParam);
    }

    return 0;
}
2008-02-26 09:34
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
收藏
得分:0 
#include <windows.h>
#include <stdio.h>

LRESULT CALLBACK WinSunProc( HWND hwnd,  UINT uMsg,   WPARAM wParam,  LPARAM lParam);

int WINAPI WinMain(
  HINSTANCE hInstance,
  HINSTANCE hPrevInstance,
  LPSTR lpCmdLine,
  int nCmdShow )
{
    HWND hwnd;
    WNDCLASS wndcls;    
    MSG msg;
    wndcls.cbClsExtra=0;
    wndcls.cbWndExtra=0;
    wndcls.hbrBackground=(HBRUSH)GetStockObject(HOLLOW_BRUSH);
    wndcls.hCursor=LoadCursor(NULL,IDC_APPSTARTING);
    wndcls.hIcon=LoadIcon(NULL,IDI_ERROR);
    wndcls.hInstance=hInstance;
    wndcls.lpfnWndProc=WinSunProc;
    wndcls.lpszClassName="sunxin2006";
    wndcls.lpszMenuName=NULL;
    wndcls.style=CS_HREDRAW | CS_VREDRAW;
    RegisterClass(&wndcls);
   
    hwnd=CreateWindow("sunxin2006","http://www.sunxin.prg",
        WS_OVERLAPPEDWINDOW,0,0,600,400,NULL,NULL,hInstance,NULL);

    ShowWindow(hwnd,SW_SHOWNORMAL);
    UpdateWindow(hwnd);

    while (GetMessage(&msg,NULL,0,0))
    {
        TranslateMessage(&msg);
        DispatchMessage(&msg);
    }
    return 0;
}

LRESULT CALLBACK WinSunProc(
  HWND hwnd,
  UINT uMsg,
  WPARAM wParam,
  LPARAM lParam
)
{       char szChar[20];
        HDC hdc;
        HDC hDC;
        PAINTSTRUCT ps;
    switch (uMsg)
    {
    case WM_CHAR:
        
        sprintf(szChar,"char code is &d",wParam);
        MessageBox(hwnd,szChar,"char",0);
        break;

    case WM_LBUTTONDOWN:
        MessageBox(hwnd,"mouse clicked","message",0);
        hdc=GetDC(hwnd);
        TextOut (hdc,0,50,"程序之家",strlen("程序之家"));
        ReleaseDC (hwnd,hdc);
        break;
    case WM_PAINT:
        hDC=BeginPaint(hwnd,&ps);
        TextOut (hDC,0,0,"http://www.,strlen("http://WWW.));
        EndPaint(hwnd,&ps);
        break;
    case WM_CLOSE:
            if(IDYES==MessageBox(hwnd,"是否真的结束?","message",MB_YESNO))
            {
                DestroyWindow(hwnd);
                break;
            }
            
    case WM_DESTROY:
        PostQuitMessage(0);
        break;
    default:
        return DefWindowProc(hwnd,uMsg,wParam,lParam);
    }
    return 0;
}
2008-02-26 10:49
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
收藏
得分:0 
我帮你改了.你自己看看.都是些基本的错误
2008-02-26 10:50
快速回复:帮我找错 谢谢了
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.031932 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved