游戏开发论坛

 找回密码
 立即注册
搜索
查看: 17197|回复: 22

各位VC大虾们帮帮忙啊~~谢谢

[复制链接]

34

主题

297

帖子

305

积分

中级会员

Rank: 3Rank: 3

积分
305
QQ
发表于 2003-7-27 15:37:00 | 显示全部楼层 |阅读模式
[em17]

#include<windows.h>

int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow)
{
       
        WNDCLASS win;
        win.cbClsExtra=0;
        win.cbWndExtra=0;
        win.hbrBackground=(HBRUSH )GetStockObject(BLACK_BRUSH);
        win.hCursor=LoadCursor(NULL,IDC_ARROW);
        win.hIcon=LoadIcon(NULL,IDI_APPLICATION);
        win.hInstance=hInstance;
        win.lpfnWndProc=NULL;
        win.lpszClassName="win";
        win.lpszMenuName=NULL;
        win.style=CS_DBLCLKS | CS_OWNDC | CS_HREDRAW | CS_VREDRAW;
        RegisterClass(&win);

        HWND Window=CreateWindowEx(
                NULL,
                "win",
                "MyWindow",
                WS_POPUP,
                10,10,
                640,480,
                NULL,
                NULL,
                hInstance,
                NULL);
       

        ShowWindow(Window,nCmdShow);
       
        UpdateWindow(Window);
       
        return 0;
}

不要笑~俺现在只会写这个……
有哪位能告诉为什么我把lpfnWndProc设成NULL的时候一运行系统就会报错吗?
错误:
Unhanled exception in Mine.exe:0xC0000005:Access Violation.

还有~请问各位我在窗口为什么老是一打开就会自动CLOSE呢?

请关爱菜鸟吧~~谢谢了  [em1]

1

主题

28

帖子

28

积分

注册会员

Rank: 2

积分
28
发表于 2003-7-27 16:05:00 | 显示全部楼层

Re:各位VC大虾们帮帮忙啊~~谢谢

你连窗口过程都没有,怎么处理Windows发给窗口的消息。

34

主题

297

帖子

305

积分

中级会员

Rank: 3Rank: 3

积分
305
QQ
 楼主| 发表于 2003-7-27 16:15:00 | 显示全部楼层

Re:各位VC大虾们帮帮忙啊~~谢谢

~那么lpfnWndProc不能为NULL吗?

34

主题

297

帖子

305

积分

中级会员

Rank: 3Rank: 3

积分
305
QQ
 楼主| 发表于 2003-7-27 16:19:00 | 显示全部楼层

Re:各位VC大虾们帮帮忙啊~~谢谢

我现在加了一个空的MsgHandler:
LRESULT CALLBACK MsgHandler(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam)
{

    return(DefWindowProc(hwnd, msg, wparam, lparam));
}

可是运行的时候窗口只闪了一下就不见了……

17

主题

65

帖子

98

积分

注册会员

Rank: 2

积分
98
发表于 2003-7-27 16:37:00 | 显示全部楼层

Re:各位VC大虾们帮帮忙啊~~谢谢

Windowproc所处理的是消息,你没有一个Defult消息,而且你没有等待消息处理的语句,当然会一下就跳回Windows。这里用C来说就是,连个循环都没有就一直执行到底。Windows是消息的处理,你最好还是看一些有关于Windows编程方面的书。

10

主题

47

帖子

47

积分

注册会员

Rank: 2

积分
47
发表于 2003-7-27 16:47:00 | 显示全部楼层

Re:各位VC大虾们帮帮忙啊~~谢谢

可以看个白版窗口,UpdateWindow(Window);
后面加上个 while(1){} 不过没意义~

34

主题

297

帖子

305

积分

中级会员

Rank: 3Rank: 3

积分
305
QQ
 楼主| 发表于 2003-7-27 17:13:00 | 显示全部楼层

Re:各位VC大虾们帮帮忙啊~~谢谢

glove大哥~~能推荐一本好一些的Windows编程教材吗?(你估计比较适合我的)顺便提供一下售价~谢谢了

1

主题

4

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2003-7-27 20:55:00 | 显示全部楼层

Re:各位VC大虾们帮帮忙啊~~谢谢

Windows编程教材 最经典的莫过于 Charles Petzold 的
《Windows程序设计》160元。上下册。

2

主题

21

帖子

21

积分

注册会员

Rank: 2

积分
21
发表于 2003-7-27 21:25:00 | 显示全部楼层

Re:各位VC大虾们帮帮忙啊~~谢谢

8dong

17

主题

65

帖子

98

积分

注册会员

Rank: 2

积分
98
发表于 2003-7-28 02:18:00 | 显示全部楼层

Re:各位VC大虾们帮帮忙啊~~谢谢

找本简单容易上手的吧。比如说清华大学的那本《VC++面向对象与可视化编程》,26元。我想懂一点C语言的人都可以看得懂。但最好别买,因为比较简单,所以最好能到图书馆借。然后如那位仁兄所说的,买好书。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2024-4-20 13:58

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表