XiaoHui.net 笑汇程序员论坛首页
工作并快乐着,职业并休闲着
寻梦的岁月从不言辛苦几许,
不问收获几多……
» 游客:  申请新用户 | 登录 | 会员 | 统计 | 帮助 » XiaoHui.Net 笑汇程序员论坛 | 纯文字版 | 全站索引 | XiaoHui.com


[MFC Class] 程序调试通过,但不能运行,郁闷中!!

RSS 订阅当前论坛  

上一主题 下一主题
     

标题: [MFC Class] 程序调试通过,但不能运行,郁闷中!!  
 
33947553
小水手
Rank: 1



UID 29654
精华 0
积分 2
帖子 2
阅读权限 10
注册 2007-2-2
状态 离线
程序调试通过,但不能运行,郁闷中!!

没有用到MFC,只是建了一个项目,然后加了一个C++文件
编译通过了,但是不能执行,
请高手指点!!
以下为 源代码。

#include <windows.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>


#define PI 3.1415926

long WINAPI WndProc(HWND hWnd,UINT iMessage,UINT WParam,LONG lParam);
BOOL InitWindowsClass(HINSTANCE hInstance);
BOOL InitWindows(HINSTANCE hInstance,int nCmdShow);
HWND hWndMain;
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd)
{
        MSG Message;
        if (!InitWindowsClass(hInstance))
        {
                return false;
        }
        if (!InitWindows(hInstance,nShowCmd))
        {
                return false;
        }
    while (GetMessage(&Message,0,0,0))
        {
                TranslateMessage(&Message);
                DispatchMessage(&Message);
    }
        return Message.wParam;
}
long WINAPI WndProc(HWND hWnd,UINT iMessage,UINT wParam,LONG lParam)
{
        HDC hDC;
        HBRUSH hBrush;
        HPEN hPen;
        PAINTSTRUCT ptStr;
        double dfRadious0=100.0,dfRadious1;
    POINT lpOuterPoints[5],lpInnerPoints[5];
        POINT lpTriangle[3];
        dfRadious1=dfRadious0*sin(0.1*PI)/sin(126.0/180*PI);
        for (int i=0;i<5;i++)
        {
                lpOuterPoints[i].x=(long)(dfRadious0*cos(i*72.0/180*PI));
                lpOuterPoints[i].y=(long)(dfRadious0*sin(i*72.0/180*PI));
                lpInnerPoints[i].x=(long)(dfRadious1*cos(i*72.0/180*PI+36.0/180*PI));
                lpInnerPoints[i].y=(long)(dfRadious1*sin(i*72.0/180*PI+36.0/180*PI));
        }
        switch(iMessage) {
        case WM_PAINT:
                hDC=BeginPaint(hWnd,&ptStr);
                SetMapMode(hDC,MM_ANISOTROPIC);
                SetWindowOrgEx(hDC,-100,-100,NULL);
                hPen=CreatePen(PS_SOLID,1,RGB(255,0,0));
                SelectObject(hDC,hPen);
                Polygon(hDC,lpOuterPoints,5);
                for ( i = 0;i<5;i++)
                {
                        lpTriangle[0] = lpOuterPoints[i%5];
                        lpTriangle[1] = lpInnerPoints[i%5];
                        lpTriangle[2] = lpOuterPoints[(i+1)%5];
                        hBrush = CreateSolidBrush(RGB(i*10,i*20,i*30));
                        SelectObject(hDC,hBrush);
                        Polygon(hDC,lpTriangle,3);
                        lpTriangle[2]= lpInnerPoints[(i+4)%5];
                        hBrush = CreateSolidBrush(RGB(i*40,i*30,i*20));
                        SelectObject(hDC,hBrush);
                        Polygon(hDC,lpTriangle,3);
                }
                hBrush = CreateSolidBrush(RGB(255,255,255));
                SelectObject(hDC,hBrush);
                Polygon(hDC,lpInnerPoints,5);
                MoveToEx(hDC,lpOuterPoints[0].x,lpOuterPoints[0].y,NULL);
                for ( i=1;i<5;i++)
                {
                        hPen=CreatePen(PS_SOLID,1,RGB(0,i*51,0));
                        SelectObject(hDC,hPen);
                        LineTo(hDC,lpOuterPoints[(i+2)%5].x,lpOuterPoints[(i+2)%5].y);
                }
                hPen=(HPEN)(GetStockObject(PS_NULL));
                DeleteObject(hPen);
                DeleteObject(hBrush);
                EndPaint(hWnd,&ptStr);
                return 0;
                break;
        case WM_DESTROY:
                PostQuitMessage(0);
                return 0;
        default:
                return(DefWindowProc(hWnd,iMessage,wParam,lParam));
        }
}
BOOL InitWindows(HINSTANCE hInstance,int nCmdShow)
{
        HWND hWnd;
        hWnd = CreateWindow("Polygon","五边形",WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,0,
                                CW_USEDEFAULT,0,NULL,NULL,hInstance,NULL);
        if (!hWnd)
        {
                return FALSE;
        }
        hWndMain = hWnd;
        ShowWindow(hWnd,nCmdShow);
    UpdateWindow(hWnd);
        return TRUE;
}
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,IDI_APPLICATION);
        WndClass.hInstance=hInstance;
        WndClass.lpfnWndProc=WndProc;
        WndClass.lpszClassName="Ploygon";
        WndClass.lpszMenuName=NULL;
        WndClass.style=0;
        return RegisterClass(&WndClass);
}
2007-2-2 12:02#1
查看资料  Blog  发短消息  QQ  顶部
 
33947553
小水手
Rank: 1



UID 29654
精华 0
积分 2
帖子 2
阅读权限 10
注册 2007-2-2
状态 离线


没人顶,伤心
2007-2-2 19:42#2
查看资料  Blog  发短消息  QQ  顶部
 
XiaoHui
管理员
Rank: 9Rank: 9Rank: 9


UID 2
精华 1
积分 4861
帖子 4851
阅读权限 200
注册 2001-1-23
来自 猎户星座
状态 离线
为什么会没有执行? 自己单步调试一下.不难的.

飞往猎户星座....
2007-2-15 14:53#3
查看资料  访问主页  Blog  发短消息  顶部
 
gwq85387566
版主
Rank: 7Rank: 7Rank: 7



UID 2605
精华 0
积分 151
帖子 151
阅读权限 100
注册 2006-4-1
来自 岳阳
状态 离线
你的意思是没有窗口显示吗?单步调试一下,看窗口类别是否注册成功!
2007-4-19 22:17#4
查看资料  Blog  发短消息  ICQ 状态  顶部
 
麦斯
版主
Rank: 7Rank: 7Rank: 7



UID 1285
精华 0
积分 1678
帖子 1678
阅读权限 100
注册 2002-4-24
状态 离线
检查一下是CUI还是GUI,然后写上正确的入口函数。
2007-4-27 10:24#5
查看资料  Blog  发短消息  顶部
 
warrior
版主
Rank: 7Rank: 7Rank: 7



UID 2453
精华 0
积分 33
帖子 33
阅读权限 100
注册 2006-3-20
来自 北京
状态 离线
楼主所说的不能运行是个什么意思?说一下具体现象吧

2007-8-16 18:27#6
查看资料  Blog  发短消息  QQ  顶部
 
TangoStudio
小水手
Rank: 1



UID 57
精华 0
积分 9
帖子 9
阅读权限 10
注册 2005-7-4
来自 深圳
状态 离线
学会单步跟踪下。



//---------------------------------------------
我们有套类似于qq游戏,联众游戏的棋牌游戏平台,寻找合作。
拥有自主产权。定制或合作运营都可以。
我们的网站www.game.ulovesoft.com
2007-10-23 22:20#7
查看资料  Blog  发短消息  顶部
     


  可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题  


 


所有时间为 GMT+8, 现在时间是 2008-12-2 01:28 Powered by Discuz! 4.1.0 清除 Cookies - XiaoHui.Net 笑汇程序员论坛 - Archiver